home *** CD-ROM | disk | FTP | other *** search
/ Level 2005 Christmas (DVD) / Level_2005-XMAS_134_DVD_Knightshift.iso / Updates / Land of the Dead / System / GUI.u / GUIComponent_GUIController_ScriptText.TextBuffer < prev    next >
Unknown  |  2005-12-07  |  14.8 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 00 00 00 00 00 00 00 | 74 ec 01 2f 2f 20 43 6f |........|t..// Co|
|00000010| 70 79 72 69 67 68 74 20 | 28 43 29 20 32 30 30 35 |pyright |(C) 2005|
|00000020| 20 42 72 61 69 6e 62 6f | 78 20 47 61 6d 65 73 2e | Brainbo|x Games.|
|00000030| 20 41 6c 6c 20 52 69 67 | 68 74 73 20 52 65 73 65 | All Rig|hts Rese|
|00000040| 72 76 65 64 2e 0d 0a 2f | 2f 20 53 65 70 74 65 6d |rved.../|/ Septem|
|00000050| 62 65 72 20 32 37 2c 20 | 32 30 30 35 0d 0a 2f 2f |ber 27, |2005..//|
|00000060| 20 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d | =======|========|
|00000070| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000080| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000090| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000000a0| 3d 3d 3d 3d 3d 0d 0a 2f | 2f 20 20 43 6c 61 73 73 |=====../|/ Class|
|000000b0| 3a 20 20 45 6e 67 69 6e | 65 2e 47 55 49 43 6f 6e |: Engin|e.GUICon|
|000000c0| 74 72 6f 6c 6c 65 72 0d | 0a 2f 2f 0d 0a 2f 2f 20 |troller.|.//..// |
|000000d0| 20 54 68 65 20 47 55 49 | 43 6f 6e 74 72 6f 6c 6c | The GUI|Controll|
|000000e0| 65 72 20 69 73 20 61 20 | 73 69 6d 70 6c 65 20 46 |er is a |simple F|
|000000f0| 49 4c 4f 20 6d 65 6e 75 | 20 73 74 61 63 6b 2e 20 |ILO menu| stack. |
|00000100| 20 59 6f 75 20 68 61 76 | 65 20 33 20 74 68 69 6e | You hav|e 3 thin|
|00000110| 67 73 0d 0a 2f 2f 20 20 | 79 6f 75 20 63 61 6e 20 |gs..// |you can |
|00000120| 64 6f 2e 20 20 59 6f 75 | 20 63 61 6e 20 4f 70 65 |do. You| can Ope|
|00000130| 6e 20 61 20 6d 65 6e 75 | 20 77 68 69 63 68 20 61 |n a menu| which a|
|00000140| 64 64 73 20 74 68 65 20 | 6d 65 6e 75 20 74 6f 20 |dds the |menu to |
|00000150| 74 68 65 20 74 6f 70 20 | 6f 66 20 74 68 65 0d 0a |the top |of the..|
|00000160| 2f 2f 20 20 73 74 61 63 | 6b 2e 20 20 59 6f 75 20 |// stac|k. You |
|00000170| 63 61 6e 20 52 65 70 6c | 61 63 65 20 61 20 6d 65 |can Repl|ace a me|
|00000180| 6e 75 20 77 68 69 63 68 | 20 72 65 70 6c 61 63 65 |nu which| replace|
|00000190| 73 20 74 68 65 20 63 75 | 72 72 65 6e 74 20 6d 65 |s the cu|rrent me|
|000001a0| 6e 75 20 77 69 74 68 20 | 74 68 65 0d 0a 2f 2f 20 |nu with |the..// |
|000001b0| 20 6e 65 77 20 6d 65 6e | 75 2e 20 20 41 6e 64 20 | new men|u. And |
|000001c0| 79 6f 75 20 63 61 6e 20 | 63 6c 6f 73 65 20 61 20 |you can |close a |
|000001d0| 6d 65 6e 75 2c 20 77 68 | 69 63 68 20 72 65 74 75 |menu, wh|ich retu|
|000001e0| 72 6e 73 20 79 6f 75 20 | 74 6f 20 74 68 65 20 6c |rns you |to the l|
|000001f0| 61 73 74 20 6d 65 6e 75 | 0d 0a 2f 2f 20 20 6f 6e |ast menu|..// on|
|00000200| 20 74 68 65 20 73 74 61 | 63 6b 2e 0d 0a 2f 2f 0d | the sta|ck...//.|
|00000210| 0a 2f 2f 20 20 57 72 69 | 74 74 65 6e 20 62 79 20 |.// Wri|tten by |
|00000220| 4a 6f 65 20 57 69 6c 63 | 6f 78 0d 0a 2f 2f 20 20 |Joe Wilc|ox..// |
|00000230| 28 63 29 20 32 30 30 32 | 2c 20 45 70 69 63 20 47 |(c) 2002|, Epic G|
|00000240| 61 6d 65 73 2c 20 49 6e | 63 2e 20 20 41 6c 6c 20 |ames, In|c. All |
|00000250| 52 69 67 68 74 73 20 52 | 65 73 65 72 76 65 64 0d |Rights R|eserved.|
|00000260| 0a 2f 2f 20 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.// ====|========|
|00000270| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000280| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00000290| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|000002a0| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 0a 0d 0a 63 6c 61 73 |========|....clas|
|000002b0| 73 20 47 55 49 43 6f 6e | 74 72 6f 6c 6c 65 72 20 |s GUICon|troller |
|000002c0| 65 78 74 65 6e 64 73 20 | 42 61 73 65 47 55 49 43 |extends |BaseGUIC|
|000002d0| 6f 6e 74 72 6f 6c 6c 65 | 72 0d 0a 09 09 4e 61 74 |ontrolle|r....Nat|
|000002e0| 69 76 65 3b 0d 0a 0d 0a | 23 65 78 65 63 20 4f 42 |ive;....|#exec OB|
|000002f0| 4a 20 4c 4f 41 44 20 46 | 49 4c 45 3d 47 55 49 43 |J LOAD F|ILE=GUIC|
|00000300| 6f 6e 74 65 6e 74 2e 75 | 74 78 0d 0a 0d 0a 2f 2f |ontent.u|tx....//|
|00000310| 20 28 63 70 70 74 65 78 | 74 29 0d 0a 2f 2f 20 28 | (cpptex|t)..// (|
|00000320| 63 70 70 74 65 78 74 29 | 0d 0a 2f 2f 20 28 63 70 |cpptext)|..// (cp|
|00000330| 70 74 65 78 74 29 0d 0a | 2f 2f 20 28 63 70 70 74 |ptext)..|// (cppt|
|00000340| 65 78 74 29 0d 0a 2f 2f | 20 28 63 70 70 74 65 78 |ext)..//| (cpptex|
|00000350| 74 29 0d 0a 2f 2f 20 28 | 63 70 70 74 65 78 74 29 |t)..// (|cpptext)|
|00000360| 0d 0a 2f 2f 20 28 63 70 | 70 74 65 78 74 29 0d 0a |..// (cp|ptext)..|
|00000370| 2f 2f 20 28 63 70 70 74 | 65 78 74 29 0d 0a 2f 2f |// (cppt|ext)..//|
|00000380| 20 28 63 70 70 74 65 78 | 74 29 0d 0a 2f 2f 20 28 | (cpptex|t)..// (|
|00000390| 63 70 70 74 65 78 74 29 | 0d 0a 2f 2f 20 28 63 70 |cpptext)|..// (cp|
|000003a0| 70 74 65 78 74 29 0d 0a | 2f 2f 20 28 63 70 70 74 |ptext)..|// (cppt|
|000003b0| 65 78 74 29 0d 0a 2f 2f | 20 28 63 70 70 74 65 78 |ext)..//| (cpptex|
|000003c0| 74 29 0d 0a 2f 2f 20 28 | 63 70 70 74 65 78 74 29 |t)..// (|cpptext)|
|000003d0| 0d 0a 2f 2f 20 28 63 70 | 70 74 65 78 74 29 0d 0a |..// (cp|ptext)..|
|000003e0| 2f 2f 20 28 63 70 70 74 | 65 78 74 29 0d 0a 2f 2f |// (cppt|ext)..//|
|000003f0| 20 28 63 70 70 74 65 78 | 74 29 0d 0a 2f 2f 20 28 | (cpptex|t)..// (|
|00000400| 63 70 70 74 65 78 74 29 | 0d 0a 2f 2f 20 28 63 70 |cpptext)|..// (cp|
|00000410| 70 74 65 78 74 29 0d 0a | 2f 2f 20 28 63 70 70 74 |ptext)..|// (cppt|
|00000420| 65 78 74 29 0d 0a 0d 0a | 76 61 72 09 65 64 69 74 |ext)....|var.edit|
|00000430| 69 6e 6c 69 6e 65 20 65 | 78 70 6f 72 74 09 61 72 |inline e|xport.ar|
|00000440| 72 61 79 3c 47 55 49 50 | 61 67 65 3e 09 09 4d 65 |ray<GUIP|age>..Me|
|00000450| 6e 75 53 74 61 63 6b 3b | 09 09 09 2f 2f 20 48 6f |nuStack;|...// Ho|
|00000460| 6c 64 73 20 74 68 65 20 | 73 74 61 63 6b 20 6f 66 |lds the |stack of|
|00000470| 20 6d 65 6e 75 73 0d 0a | 76 61 72 09 09 09 09 09 | menus..|var.....|
|00000480| 09 47 55 49 50 61 67 65 | 09 09 09 09 41 63 74 69 |.GUIPage|....Acti|
|00000490| 76 65 50 61 67 65 3b 09 | 09 09 2f 2f 20 50 6f 69 |vePage;.|..// Poi|
|000004a0| 6e 74 73 20 74 6f 20 74 | 68 65 20 63 75 72 72 65 |nts to t|he curre|
|000004b0| 6e 74 6c 79 20 61 63 74 | 69 76 65 20 70 61 67 65 |ntly act|ive page|
|000004c0| 0d 0a 76 61 72 20 65 64 | 69 74 69 6e 6c 69 6e 65 |..var ed|itinline|
|000004d0| 20 09 09 09 41 72 72 61 | 79 3c 47 55 49 46 6f 6e | ...Arra|y<GUIFon|
|000004e0| 74 3e 09 09 46 6f 6e 74 | 53 74 61 63 6b 3b 09 09 |t>..Font|Stack;..|
|000004f0| 09 2f 2f 20 48 6f 6c 64 | 73 20 61 6c 6c 20 74 68 |.// Hold|s all th|
|00000500| 65 20 70 6f 73 73 69 62 | 6c 65 20 66 6f 6e 74 73 |e possib|le fonts|
|00000510| 0d 0a 76 61 72 20 09 09 | 09 09 09 41 72 72 61 79 |..var ..|...Array|
|00000520| 3c 47 55 49 53 74 79 6c | 65 73 3e 09 53 74 79 6c |<GUIStyl|es>.Styl|
|00000530| 65 53 74 61 63 6b 3b 09 | 09 09 2f 2f 20 48 6f 6c |eStack;.|..// Hol|
|00000540| 64 73 20 61 6c 6c 20 6f | 66 20 74 68 65 20 70 6f |ds all o|f the po|
|00000550| 73 73 69 62 6c 65 20 73 | 74 79 6c 65 73 0d 0a 76 |ssible s|tyles..v|
|00000560| 61 72 09 09 09 09 09 09 | 41 72 72 61 79 3c 73 74 |ar......|Array<st|
|00000570| 72 69 6e 67 3e 09 09 53 | 74 79 6c 65 4e 61 6d 65 |ring>..S|tyleName|
|00000580| 73 3b 09 09 09 2f 2f 20 | 48 6f 6c 64 73 20 74 68 |s;...// |Holds th|
|00000590| 65 20 6e 61 6d 65 20 6f | 66 20 61 6c 6c 20 73 74 |e name o|f all st|
|000005a0| 79 6c 65 73 20 74 6f 20 | 75 73 65 0d 0a 76 61 72 |yles to |use..var|
|000005b0| 20 65 64 69 74 69 6e 6c | 69 6e 65 20 09 09 09 41 | editinl|ine ...A|
|000005c0| 72 72 61 79 3c 4d 61 74 | 65 72 69 61 6c 3e 09 09 |rray<Mat|erial>..|
|000005d0| 4d 6f 75 73 65 43 75 72 | 73 6f 72 73 3b 09 09 2f |MouseCur|sors;../|
|000005e0| 2f 20 48 6f 6c 64 73 20 | 61 20 6c 69 73 74 20 6f |/ Holds |a list o|
|000005f0| 66 20 61 6c 6c 20 70 6f | 73 73 69 62 6c 65 20 6d |f all po|ssible m|
|00000600| 6f 75 73 65 0d 0a 76 61 | 72 20 65 64 69 74 69 6e |ouse..va|r editin|
|00000610| 6c 69 6e 65 09 09 09 41 | 72 72 61 79 3c 76 65 63 |line...A|rray<vec|
|00000620| 74 6f 72 3e 09 09 4d 6f | 75 73 65 43 75 72 73 6f |tor>..Mo|useCurso|
|00000630| 72 4f 66 66 73 65 74 3b | 20 20 2f 2f 20 4f 6e 6c |rOffset;| // Onl|
|00000640| 79 20 58 2c 59 20 75 73 | 65 64 2c 20 62 65 74 77 |y X,Y us|ed, betw|
|00000650| 65 65 6e 20 30 20 61 6e | 64 20 31 2e 20 27 48 6f |een 0 an|d 1. 'Ho|
|00000660| 74 20 53 70 6f 74 27 20 | 6f 66 20 63 75 72 73 6f |t Spot' |of curso|
|00000670| 72 20 6d 61 74 65 72 69 | 61 6c 2e 0d 0a 76 61 72 |r materi|al...var|
|00000680| 09 09 09 09 09 09 41 72 | 72 61 79 3c 47 55 49 50 |......Ar|ray<GUIP|
|00000690| 61 67 65 3e 09 09 50 65 | 72 73 69 73 74 65 6e 74 |age>..Pe|rsistent|
|000006a0| 53 74 61 63 6b 3b 09 2f | 2f 20 48 6f 6c 64 73 20 |Stack;./|/ Holds |
|000006b0| 74 68 65 20 73 65 74 20 | 6f 66 20 70 61 67 65 73 |the set |of pages|
|000006c0| 20 77 68 69 63 68 20 61 | 72 65 20 70 65 72 73 69 | which a|re persi|
|000006d0| 73 74 65 6e 74 20 61 63 | 72 6f 73 73 20 63 6c 6f |stent ac|ross clo|
|000006e0| 73 65 2f 6f 70 65 6e 0d | 0a 0d 0a 76 61 72 09 09 |se/open.|...var..|
|000006f0| 09 09 09 09 62 79 74 65 | 09 09 09 09 43 6f 6e 74 |....byte|....Cont|
|00000700| 72 6f 6c 6c 65 72 4d 61 | 73 6b 3b 09 09 2f 2f 20 |rollerMa|sk;..// |
|00000710| 55 73 65 64 20 74 6f 20 | 6d 61 73 6b 20 69 6e 70 |Used to |mask inp|
|00000720| 75 74 20 66 6f 72 20 76 | 61 72 69 6f 75 73 20 43 |ut for v|arious C|
|00000730| 6f 6e 74 72 6f 6c 6c 65 | 72 73 0d 0a 76 61 72 09 |ontrolle|rs..var.|
|00000740| 09 09 09 09 09 62 79 74 | 65 09 09 09 09 43 6f 6e |.....byt|e....Con|
|00000750| 74 72 6f 6c 6c 65 72 49 | 64 3b 09 09 2f 2f 20 54 |trollerI|d;..// T|
|00000760| 68 65 20 63 75 72 72 65 | 6e 74 20 43 6f 6e 74 72 |he curre|nt Contr|
|00000770| 6f 6c 6c 65 72 20 49 44 | 20 23 0d 0a 76 61 72 09 |oller ID| #..var.|
|00000780| 09 09 09 09 09 66 6c 6f | 61 74 09 09 09 09 4d 6f |.....flo|at....Mo|
|00000790| 75 73 65 58 2c 4d 6f 75 | 73 65 59 3b 09 09 2f 2f |useX,Mou|seY;..//|
|000007a0| 20 57 68 65 72 65 20 69 | 73 20 74 68 65 20 6d 6f | Where i|s the mo|
|000007b0| 75 73 65 20 63 75 72 72 | 65 6e 74 6c 79 20 6c 6f |use curr|ently lo|
|000007c0| 63 61 74 65 64 0d 0a 0d | 0a 76 61 72 09 09 09 09 |cated...|.var....|
|000007d0| 09 09 66 6c 6f 61 74 09 | 09 09 09 4c 61 73 74 4d |..float.|...LastM|
|000007e0| 6f 75 73 65 58 2c 20 4c | 61 73 74 4d 6f 75 73 65 |ouseX, L|astMouse|
|000007f0| 59 3b 0d 0a 0d 0a 76 61 | 72 09 09 09 09 09 09 62 |Y;....va|r......b|
|00000800| 6f 6f 6c 09 09 09 09 53 | 68 69 66 74 50 72 65 73 |ool....S|hiftPres|
|00000810| 73 65 64 3b 09 09 2f 2f | 20 53 68 69 66 74 20 6b |sed;..//| Shift k|
|00000820| 65 79 20 69 73 20 62 65 | 69 6e 67 20 68 65 6c 64 |ey is be|ing held|
|00000830| 0d 0a 76 61 72 09 09 09 | 09 09 09 62 6f 6f 6c 09 |..var...|...bool.|
|00000840| 09 09 09 41 6c 74 50 72 | 65 73 73 65 64 3b 09 09 |...AltPr|essed;..|
|00000850| 09 2f 2f 20 41 6c 74 20 | 6b 65 79 20 69 73 20 62 |.// Alt |key is b|
|00000860| 65 69 6e 67 20 68 65 6c | 64 0d 0a 76 61 72 09 09 |eing hel|d..var..|
|00000870| 09 09 09 09 62 6f 6f 6c | 09 09 09 09 43 74 72 6c |....bool|....Ctrl|
|00000880| 50 72 65 73 73 65 64 3b | 09 09 2f 2f 20 43 74 72 |Pressed;|..// Ctr|
|00000890| 6c 20 6b 65 79 20 69 73 | 20 62 65 69 6e 67 20 68 |l key is| being h|
|000008a0| 65 6c 64 0d 0a 0d 0a 0d | 0a 76 61 72 09 09 09 09 |eld.....|.var....|
|000008b0| 09 09 66 6c 6f 61 74 09 | 09 09 09 44 62 6c 43 6c |..float.|...DblCl|
|000008c0| 69 63 6b 57 69 6e 64 6f | 77 3b 09 09 09 2f 2f 20 |ickWindo|w;...// |
|000008d0| 48 6f 77 20 6c 6f 6e 67 | 20 64 6f 20 79 6f 75 20 |How long| do you |
|000008e0| 68 61 76 65 20 66 6f 72 | 20 61 20 64 6f 75 62 6c |have for| a doubl|
|000008f0| 65 20 63 6c 69 63 6b 0d | 0a 76 61 72 09 09 09 09 |e click.|.var....|
|00000900| 09 09 66 6c 6f 61 74 09 | 09 09 09 4c 61 73 74 43 |..float.|...LastC|
|00000910| 6c 69 63 6b 54 69 6d 65 | 3b 09 09 09 2f 2f 20 57 |lickTime|;...// W|
|00000920| 68 65 6e 20 64 69 64 20 | 74 68 65 20 6c 61 73 74 |hen did |the last|
|00000930| 20 63 6c 69 63 6b 20 6f | 63 63 75 72 0d 0a 76 61 | click o|ccur..va|
|00000940| 72 09 09 09 09 09 09 69 | 6e 74 09 09 09 09 09 4c |r......i|nt.....L|
|00000950| 61 73 74 43 6c 69 63 6b | 58 2c 4c 61 73 74 43 6c |astClick|X,LastCl|
|00000960| 69 63 6b 59 3b 09 2f 2f | 20 57 68 6f 20 77 61 73 |ickY;.//| Who was|
|00000970| 20 74 68 65 20 61 63 74 | 69 76 65 20 63 6f 6d 70 | the act|ive comp|
|00000980| 6f 6e 65 6e 74 0d 0a 0d | 0a 76 61 72 09 09 09 09 |onent...|.var....|
|00000990| 09 09 66 6c 6f 61 74 09 | 09 09 09 42 75 74 74 6f |..float.|...Butto|
|000009a0| 6e 52 65 70 65 61 74 44 | 65 6c 61 79 3b 09 09 2f |nRepeatD|elay;../|
|000009b0| 2f 20 54 68 65 20 61 6d | 6f 75 6e 74 20 6f 66 20 |/ The am|ount of |
|000009c0| 64 65 6c 61 79 20 66 6f | 72 20 66 61 6b 69 6e 67 |delay fo|r faking|
|000009d0| 20 62 75 74 74 6f 6e 20 | 72 65 70 65 61 74 73 0d | button |repeats.|
|000009e0| 0a 76 61 72 09 09 09 09 | 09 09 62 79 74 65 09 09 |.var....|..byte..|
|000009f0| 09 09 52 65 70 65 61 74 | 4b 65 79 5b 34 5d 3b 09 |..Repeat|Key[4];.|
|00000a00| 09 09 2f 2f 20 55 73 65 | 64 20 74 6f 20 64 65 74 |..// Use|d to det|
|00000a10| 65 72 6d 69 6e 65 20 77 | 68 61 74 20 73 68 6f 75 |ermine w|hat shou|
|00000a20| 6c 64 20 72 65 70 65 61 | 74 0d 0a 76 61 72 09 09 |ld repea|t..var..|
|00000a30| 09 09 09 09 66 6c 6f 61 | 74 09 09 09 09 52 65 70 |....floa|t....Rep|
|00000a40| 65 61 74 44 65 6c 74 61 | 5b 34 5d 3b 09 09 09 2f |eatDelta|[4];.../|
|00000a50| 2f 20 44 61 74 61 20 76 | 61 72 0d 0a 76 61 72 09 |/ Data v|ar..var.|
|00000a60| 09 09 09 09 09 66 6c 6f | 61 74 09 09 09 09 52 65 |.....flo|at....Re|
|00000a70| 70 65 61 74 54 69 6d 65 | 5b 34 5d 3b 09 09 09 2f |peatTime|[4];.../|
|00000a80| 2f 20 48 6f 77 20 6c 6f | 6e 67 20 75 6e 74 69 6c |/ How lo|ng until|
|00000a90| 20 74 68 65 20 6e 65 78 | 74 20 72 65 70 65 61 74 | the nex|t repeat|
|00000aa0| 3b 0d 0a 76 61 72 09 09 | 09 09 09 09 66 6c 6f 61 |;..var..|....floa|
|00000ab0| 74 09 09 09 09 43 75 72 | 73 6f 72 46 61 64 65 3b |t....Cur|sorFade;|
|00000ac0| 09 09 09 09 2f 2f 20 48 | 6f 77 20 76 69 73 69 62 |....// H|ow visib|
|00000ad0| 6c 65 20 69 73 20 74 68 | 65 20 63 75 72 73 6f 72 |le is th|e cursor|
|00000ae0| 0d 0a 76 61 72 09 09 09 | 09 09 09 69 6e 74 09 09 |..var...|...int..|
|00000af0| 09 09 09 43 75 72 73 6f | 72 53 74 65 70 3b 09 09 |...Curso|rStep;..|
|00000b00| 09 09 2f 2f 20 41 72 65 | 20 77 65 20 66 61 64 69 |..// Are| we fadi|
|00000b10| 6e 67 20 69 6e 20 6f 72 | 20 6f 75 74 0d 0a 0d 0a |ng in or| out....|
|00000b20| 76 61 72 09 09 09 09 09 | 09 66 6c 6f 61 74 09 09 |var.....|.float..|
|00000b30| 09 09 46 61 73 74 43 75 | 72 73 6f 72 46 61 64 65 |..FastCu|rsorFade|
|00000b40| 3b 09 09 09 2f 2f 20 48 | 6f 77 20 76 69 73 69 62 |;...// H|ow visib|
|00000b50| 6c 65 20 69 73 20 74 68 | 65 20 63 75 72 73 6f 72 |le is th|e cursor|
|00000b60| 0d 0a 76 61 72 09 09 09 | 09 09 09 69 6e 74 09 09 |..var...|...int..|
|00000b70| 09 09 09 46 61 73 74 43 | 75 72 73 6f 72 53 74 65 |...FastC|ursorSte|
|00000b80| 70 3b 09 09 09 2f 2f 20 | 41 72 65 20 77 65 20 66 |p;...// |Are we f|
|00000b90| 61 64 69 6e 67 20 69 6e | 20 6f 72 20 6f 75 74 0d |ading in| or out.|
|00000ba0| 0a 0d 0a 76 61 72 09 09 | 09 09 09 09 47 55 49 43 |...var..|....GUIC|
|00000bb0| 6f 6d 70 6f 6e 65 6e 74 | 09 09 46 6f 63 75 73 65 |omponent|..Focuse|
|00000bc0| 64 43 6f 6e 74 72 6f 6c | 3b 09 09 09 2f 2f 20 54 |dControl|;...// T|
|00000bd0| 6f 70 20 6d 6f 73 74 20 | 46 6f 63 75 73 65 64 20 |op most |Focused |
|00000be0| 63 6f 6e 74 72 6f 6c 0d | 0a 76 61 72 09 09 09 09 |control.|.var....|
|00000bf0| 09 09 47 55 49 43 6f 6d | 70 6f 6e 65 6e 74 20 09 |..GUICom|ponent .|
|00000c00| 09 41 63 74 69 76 65 43 | 6f 6e 74 72 6f 6c 3b 09 |.ActiveC|ontrol;.|
|00000c10| 09 09 2f 2f 20 57 68 69 | 63 68 20 63 6f 6e 74 72 |..// Whi|ch contr|
|00000c20| 6f 6c 20 69 73 20 63 75 | 72 72 65 6e 74 6c 79 20 |ol is cu|rrently |
|00000c30| 61 63 74 69 76 65 0d 0a | 76 61 72 09 09 09 09 09 |active..|var.....|
|00000c40| 09 47 55 49 43 6f 6d 70 | 6f 6e 65 6e 74 09 09 53 |.GUIComp|onent..S|
|00000c50| 6b 69 70 43 6f 6e 74 72 | 6f 6c 3b 09 09 09 2f 2f |kipContr|ol;...//|
|00000c60| 20 54 68 69 73 20 63 6f | 6e 74 72 6f 6c 20 73 68 | This co|ntrol sh|
|00000c70| 6f 75 6c 64 20 62 65 20 | 73 6b 69 70 70 65 64 20 |ould be |skipped |
|00000c80| 6f 76 65 72 20 61 6e 64 | 20 64 72 61 77 6e 20 61 |over and| drawn a|
|00000c90| 74 20 74 68 65 20 65 6e | 64 0d 0a 76 61 72 09 09 |t the en|d..var..|
|00000ca0| 09 09 09 09 47 55 49 43 | 6f 6d 70 6f 6e 65 6e 74 |....GUIC|omponent|
|00000cb0| 09 09 4d 6f 76 65 43 6f | 6e 74 72 6f 6c 3b 09 09 |..MoveCo|ntrol;..|
|00000cc0| 09 2f 2f 20 55 73 65 64 | 20 66 6f 72 20 76 69 73 |.// Used| for vis|
|00000cd0| 75 61 6c 20 64 65 73 69 | 67 6e 0d 0a 0d 0a 76 61 |ual desi|gn....va|
|00000ce0| 72 09 09 09 09 09 09 62 | 6f 6f 6c 09 09 09 09 62 |r......b|ool....b|
|00000cf0| 49 67 6e 6f 72 65 4e 65 | 78 74 52 65 6c 65 61 73 |IgnoreNe|xtReleas|
|00000d00| 65 3b 09 09 2f 2f 20 55 | 73 65 64 20 74 6f 20 6d |e;..// U|sed to m|
|00000d10| 61 6b 65 20 73 75 72 65 | 20 64 69 73 63 61 72 64 |ake sure| discard|
|00000d20| 20 65 72 72 61 6e 74 20 | 72 65 6c 65 61 73 65 73 | errant |releases|
|00000d30| 2e 0d 0a 0d 0a 76 61 72 | 20 63 6f 6e 66 69 67 09 |.....var| config.|
|00000d40| 09 09 09 62 6f 6f 6c 20 | 09 09 09 09 62 4d 6f 64 |...bool |....bMod|
|00000d50| 41 75 74 68 6f 72 3b 09 | 09 09 09 2f 2f 20 41 6c |Author;.|...// Al|
|00000d60| 6c 6f 77 73 20 62 44 65 | 73 69 67 6e 20 4d 6f 64 |lows bDe|sign Mod|
|00000d70| 65 0d 0a 76 61 72 20 09 | 09 09 09 09 62 6f 6f 6c |e..var .|....bool|
|00000d80| 09 09 09 09 62 44 65 73 | 69 67 6e 4d 6f 64 65 3b |....bDes|ignMode;|
|00000d90| 09 09 09 2f 2f 20 41 72 | 65 20 77 65 20 69 6e 20 |...// Ar|e we in |
|00000da0| 64 65 73 69 67 6e 20 6d | 6f 64 65 3b 0d 0a 76 61 |design m|ode;..va|
|00000db0| 72 09 09 09 09 09 09 62 | 6f 6f 6c 09 09 09 09 62 |r......b|ool....b|
|00000dc0| 48 69 67 68 6c 69 67 68 | 74 43 75 72 72 65 6e 74 |Highligh|tCurrent|
|00000dd0| 3b 09 09 2f 2f 20 48 69 | 67 68 6c 69 67 68 74 20 |;..// Hi|ghlight |
|00000de0| 74 68 65 20 63 75 72 72 | 65 6e 74 20 63 6f 6e 74 |the curr|ent cont|
|00000df0| 72 6f 6c 20 62 65 69 6e | 67 20 65 64 69 74 65 64 |rol bein|g edited|
|00000e00| 0d 0a 0d 0a 0d 0a 76 61 | 72 09 09 09 09 09 09 62 |......va|r......b|
|00000e10| 6f 6f 6c 09 09 09 09 62 | 43 75 72 4d 65 6e 75 49 |ool....b|CurMenuI|
|00000e20| 6e 69 74 69 61 6c 69 7a | 65 64 3b 09 2f 2f 20 48 |nitializ|ed;.// H|
|00000e30| 61 73 20 74 68 65 20 63 | 75 72 72 65 6e 74 20 4d |as the c|urrent M|
|00000e40| 65 6e 75 20 46 69 6e 69 | 73 68 65 64 20 69 6e 69 |enu Fini|shed ini|
|00000e50| 74 69 61 6c 69 7a 61 74 | 69 6f 6e 0d 0a 0d 0a 76 |tializat|ion....v|
|00000e60| 61 72 09 09 09 09 09 09 | 73 74 72 69 6e 67 09 09 |ar......|string..|
|00000e70| 09 09 47 61 6d 65 52 65 | 73 6f 6c 75 74 69 6f 6e |..GameRe|solution|
|00000e80| 3b 0d 0a 76 61 72 20 63 | 6f 6e 66 69 67 09 09 09 |;..var c|onfig...|
|00000e90| 09 66 6c 6f 61 74 09 09 | 09 09 4d 65 6e 75 4d 6f |.float..|..MenuMo|
|00000ea0| 75 73 65 53 65 6e 73 3b | 0d 0a 0d 0a 76 61 72 09 |useSens;|....var.|
|00000eb0| 09 09 09 09 09 62 6f 6f | 6c 09 09 09 09 4d 61 69 |.....boo|l....Mai|
|00000ec0| 6e 4e 6f 74 57 61 6e 74 | 65 64 3b 09 09 09 2f 2f |nNotWant|ed;...//|
|00000ed0| 20 53 65 74 20 74 6f 20 | 74 72 75 65 20 69 66 20 | Set to |true if |
|00000ee0| 79 6f 75 20 64 6f 6e 27 | 74 20 77 61 6e 74 20 6d |you don'|t want m|
|00000ef0| 61 69 6e 20 74 6f 20 61 | 70 70 65 61 72 2e 0d 0a |ain to a|ppear...|
|00000f00| 0d 0a 2f 2f 20 53 6f 75 | 6e 64 73 0d 0a 76 61 72 |..// Sou|nds..var|
|00000f10| 09 09 09 09 09 09 73 6f | 75 6e 64 09 09 09 09 4d |......so|und....M|
|00000f20| 6f 75 73 65 4f 76 65 72 | 53 6f 75 6e 64 3b 0d 0a |ouseOver|Sound;..|
|00000f30| 76 61 72 09 09 09 09 09 | 09 73 6f 75 6e 64 09 09 |var.....|.sound..|
|00000f40| 09 09 43 6c 69 63 6b 53 | 6f 75 6e 64 3b 0d 0a 76 |..ClickS|ound;..v|
|00000f50| 61 72 09 09 09 09 09 09 | 73 6f 75 6e 64 09 09 09 |ar......|sound...|
|00000f60| 09 45 64 69 74 53 6f 75 | 6e 64 3b 0d 0a 76 61 72 |.EditSou|nd;..var|
|00000f70| 09 09 09 09 09 09 73 6f | 75 6e 64 09 09 09 09 55 |......so|und....U|
|00000f80| 70 53 6f 75 6e 64 3b 0d | 0a 76 61 72 09 09 09 09 |pSound;.|.var....|
|00000f90| 09 09 73 6f 75 6e 64 09 | 09 09 09 44 6f 77 6e 53 |..sound.|...DownS|
|00000fa0| 6f 75 6e 64 3b 0d 0a 0d | 0a 76 61 72 09 09 09 09 |ound;...|.var....|
|00000fb0| 09 09 62 6f 6f 6c 09 09 | 09 09 62 46 6f 72 63 65 |..bool..|..bForce|
|00000fc0| 4d 6f 75 73 65 43 68 65 | 63 6b 3b 09 09 2f 2f 20 |MouseChe|ck;..// |
|00000fd0| 48 41 43 4b 0d 0a 76 61 | 72 09 09 09 09 09 09 62 |HACK..va|r......b|
|00000fe0| 6f 6f 6c 09 09 09 09 62 | 49 67 6e 6f 72 65 55 6e |ool....b|IgnoreUn|
|00000ff0| 74 69 6c 50 72 65 73 73 | 3b 09 09 2f 2f 20 48 41 |tilPress|;..// HA|
|00001000| 43 4b 0d 0a 0d 0a 76 61 | 72 09 63 6f 6e 66 69 67 |CK....va|r.config|
|00001010| 09 09 09 09 61 72 72 61 | 79 3c 73 74 72 69 6e 67 |....arra|y<string|
|00001020| 3e 09 09 41 75 74 6f 4c | 6f 61 64 3b 09 2f 2f 20 |>..AutoL|oad;.// |
|00001030| 41 6e 79 20 6d 65 6e 75 | 20 63 6c 61 73 73 65 73 |Any menu| classes|
|00001040| 20 69 6e 20 68 65 72 65 | 20 77 69 6c 6c 20 62 65 | in here| will be|
|00001050| 20 61 75 74 6f 6d 61 74 | 69 63 61 6c 6c 79 20 6c | automat|ically l|
|00001060| 6f 61 64 65 64 0d 0a 0d | 0a 0d 0a 2f 2f 20 4a 6f |oaded...|...// Jo|
|00001070| 79 73 74 69 63 6b 2f 4a | 6f 79 50 61 64 2f 43 6f |ystick/J|oyPad/Co|
|00001080| 6e 73 6f 6c 65 20 53 70 | 65 63 69 66 69 63 0d 0a |nsole Sp|ecific..|
|00001090| 0d 0a 76 61 72 09 63 6f | 6e 66 69 67 09 62 6f 6f |..var.co|nfig.boo|
|000010a0| 6c 09 62 45 6d 75 6c 61 | 74 65 64 4a 6f 79 70 61 |l.bEmula|tedJoypa|
|000010b0| 64 3b 09 2f 2f 20 48 61 | 76 65 20 74 68 65 20 63 |d;.// Ha|ve the c|
|000010c0| 75 72 73 6f 72 20 6b 65 | 79 73 20 65 6d 75 6c 61 |ursor ke|ys emula|
|000010d0| 74 65 20 61 20 58 42 6f | 78 20 63 6f 6e 74 72 6f |te a XBo|x contro|
|000010e0| 6c 6c 65 72 0d 0a 76 61 | 72 09 63 6f 6e 66 69 67 |ller..va|r.config|
|000010f0| 09 62 6f 6f 6c 09 62 4a | 6f 79 4d 6f 75 73 65 3b |.bool.bJ|oyMouse;|
|00001100| 09 09 09 2f 2f 20 57 68 | 65 6e 20 74 72 75 65 2c |...// Wh|en true,|
|00001110| 20 72 69 67 68 74 20 63 | 6f 6e 74 72 6f 6c 20 73 | right c|ontrol s|
|00001120| 74 69 63 6b 20 61 63 74 | 73 20 61 73 20 61 20 31 |tick act|s as a 1|
|00001130| 20 62 75 74 74 6f 6e 20 | 6d 6f 75 73 65 0d 0a 76 | button |mouse..v|
|00001140| 61 72 20 63 6f 6e 66 69 | 67 20 20 62 6f 6f 6c 09 |ar confi|g bool.|
|00001150| 62 48 69 64 65 4d 6f 75 | 73 65 43 75 72 73 6f 72 |bHideMou|seCursor|
|00001160| 3b 09 2f 2f 20 57 68 65 | 6e 20 74 72 75 65 2c 20 |;.// Whe|n true, |
|00001170| 74 68 65 20 6d 6f 75 73 | 65 20 63 75 72 73 6f 72 |the mous|e cursor|
|00001180| 20 77 69 6c 6c 20 62 65 | 20 68 69 64 64 65 6e 0d | will be| hidden.|
|00001190| 0a 76 61 72 20 63 6f 6e | 66 69 67 20 20 66 6c 6f |.var con|fig flo|
|000011a0| 61 74 09 4a 6f 79 44 65 | 61 64 5a 6f 6e 65 3b 09 |at.JoyDe|adZone;.|
|000011b0| 09 2f 2f 20 54 68 65 20 | 44 65 61 64 5a 6f 6e 65 |.// The |DeadZone|
|000011c0| 20 66 6f 72 20 6a 6f 79 | 73 74 69 63 6b 73 0d 0a | for joy|sticks..|
|000011d0| 0d 0a 76 61 72 09 09 46 | 6c 6f 61 74 09 4a 6f 79 |..var..F|loat.Joy|
|000011e0| 4c 65 66 74 58 41 78 69 | 73 5b 34 5d 3b 0d 0a 76 |LeftXAxi|s[4];..v|
|000011f0| 61 72 09 09 46 6c 6f 61 | 74 20 09 4a 6f 79 4c 65 |ar..Floa|t .JoyLe|
|00001200| 66 74 59 41 78 69 73 5b | 34 5d 3b 0d 0a 76 61 72 |ftYAxis[|4];..var|
|00001210| 09 09 46 6c 6f 61 74 09 | 4a 6f 79 52 69 67 68 74 |..Float.|JoyRight|
|00001220| 58 41 78 69 73 5b 34 5d | 3b 0d 0a 76 61 72 09 09 |XAxis[4]|;..var..|
|00001230| 46 6c 6f 61 74 09 4a 6f | 79 52 69 67 68 74 59 41 |Float.Jo|yRightYA|
|00001240| 78 69 73 5b 34 5d 3b 0d | 0a 76 61 72 09 09 42 79 |xis[4];.|.var..By|
|00001250| 74 65 09 4a 6f 79 42 75 | 74 74 6f 6e 73 5b 36 34 |te.JoyBu|ttons[64|
|00001260| 5d 3b 0d 0a 0d 0a 76 61 | 72 20 66 6c 6f 61 74 20 |];....va|r float |
|00001270| 4a 6f 79 43 6f 6e 74 72 | 6f 6c 73 44 65 6c 74 61 |JoyContr|olsDelta|
|00001280| 5b 31 36 5d 3b 09 2f 2f | 20 48 6f 77 20 6c 6f 6e |[16];.//| How lon|
|00001290| 67 20 73 69 6e 63 65 20 | 61 20 6a 6f 79 73 74 69 |g since |a joysti|
|000012a0| 63 6b 20 77 61 73 20 63 | 6f 6e 76 65 72 74 65 64 |ck was c|onverted|
|000012b0| 0d 0a 0d 0a 0d 0a 0d 0a | 2f 2f 20 54 65 6d 70 6f |........|// Tempo|
|000012c0| 72 61 72 79 20 66 6f 72 | 20 44 65 73 69 67 6e 20 |rary for| Design |
|000012d0| 4d 6f 64 65 0d 0a 76 61 | 72 20 4d 61 74 65 72 69 |Mode..va|r Materi|
|000012e0| 61 6c 20 57 68 69 74 65 | 42 6f 72 64 65 72 3b 0d |al White|Border;.|
|000012f0| 0a 0d 0a 6e 61 74 69 76 | 65 20 65 76 65 6e 74 20 |...nativ|e event |
|00001300| 47 55 49 46 6f 6e 74 20 | 47 65 74 4d 65 6e 75 46 |GUIFont |GetMenuF|
|00001310| 6f 6e 74 28 73 74 72 69 | 6e 67 20 46 6f 6e 74 4e |ont(stri|ng FontN|
|00001320| 61 6d 65 29 3b 20 09 2f | 2f 20 46 69 6e 64 73 20 |ame); ./|/ Finds |
|00001330| 61 20 67 69 76 65 6e 20 | 66 6f 6e 74 20 69 6e 20 |a given |font in |
|00001340| 74 68 65 20 46 6f 6e 74 | 53 74 61 63 6b 0d 0a 6e |the Font|Stack..n|
|00001350| 61 74 69 76 65 20 65 76 | 65 6e 74 20 47 55 49 53 |ative ev|ent GUIS|
|00001360| 74 79 6c 65 73 20 47 65 | 74 53 74 79 6c 65 28 73 |tyles Ge|tStyle(s|
|00001370| 74 72 69 6e 67 20 53 74 | 79 6c 65 4e 61 6d 65 29 |tring St|yleName)|
|00001380| 3b 20 09 2f 2f 20 46 69 | 6e 64 20 61 20 73 74 79 |; .// Fi|nd a sty|
|00001390| 6c 65 20 6f 6e 20 74 68 | 65 20 73 74 61 63 6b 0d |le on th|e stack.|
|000013a0| 0a 6e 61 74 69 76 65 20 | 66 75 6e 63 74 69 6f 6e |.native |function|
|000013b0| 20 73 74 72 69 6e 67 20 | 47 65 74 43 75 72 72 65 | string |GetCurre|
|000013c0| 6e 74 52 65 73 28 29 3b | 09 09 09 09 2f 2f 20 52 |ntRes();|....// R|
|000013d0| 65 74 75 72 6e 73 20 74 | 68 65 20 63 75 72 72 65 |eturns t|he curre|
|000013e0| 6e 74 20 72 65 73 20 61 | 73 20 61 20 73 74 72 69 |nt res a|s a stri|
|000013f0| 6e 67 0d 0a 6e 61 74 69 | 76 65 20 66 75 6e 63 74 |ng..nati|ve funct|
|00001400| 69 6f 6e 20 73 74 72 69 | 6e 67 20 47 65 74 4d 61 |ion stri|ng GetMa|
|00001410| 69 6e 4d 65 6e 75 43 6c | 61 73 73 28 29 3b 09 09 |inMenuCl|ass();..|
|00001420| 09 2f 2f 20 52 65 74 75 | 72 6e 73 20 47 61 6d 65 |.// Retu|rns Game|
|00001430| 45 6e 67 69 6e 65 2e 4d | 61 69 6e 4d 65 6e 75 43 |Engine.M|ainMenuC|
|00001440| 6c 61 73 73 0d 0a 0d 0a | 2f 2f 20 55 74 69 6c 69 |lass....|// Utili|
|00001450| 74 79 20 66 75 6e 63 74 | 69 6f 6e 73 20 66 6f 72 |ty funct|ions for|
|00001460| 20 74 68 65 20 55 49 0d | 0a 0d 0a 6e 61 74 69 76 | the UI.|...nativ|
|00001470| 65 20 66 75 6e 63 74 69 | 6f 6e 20 47 65 74 4d 61 |e functi|on GetMa|
|00001480| 70 4c 69 73 74 28 73 74 | 72 69 6e 67 20 50 72 65 |pList(st|ring Pre|
|00001490| 66 69 78 2c 20 47 55 49 | 4c 69 73 74 20 6c 69 73 |fix, GUI|List lis|
|000014a0| 74 29 3b 0d 0a 0d 0a 6e | 61 74 69 76 65 20 66 75 |t);....n|ative fu|
|000014b0| 6e 63 74 69 6f 6e 20 52 | 65 73 65 74 4b 65 79 62 |nction R|esetKeyb|
|000014c0| 6f 61 72 64 28 29 3b 0d | 0a 6e 61 74 69 76 65 20 |oard();.|.native |
|000014d0| 66 75 6e 63 74 69 6f 6e | 20 4d 6f 75 73 65 45 6d |function| MouseEm|
|000014e0| 75 6c 61 74 69 6f 6e 28 | 62 6f 6f 6c 20 4f 6e 29 |ulation(|bool On)|
|000014f0| 3b 0d 0a 0d 0a 64 65 6c | 65 67 61 74 65 20 62 6f |;....del|egate bo|
|00001500| 6f 6c 20 4f 6e 4e 65 65 | 64 52 61 77 4b 65 79 50 |ol OnNee|dRawKeyP|
|00001510| 72 65 73 73 28 62 79 74 | 65 20 4e 65 77 4b 65 79 |ress(byt|e NewKey|
|00001520| 29 3b 0d 0a 0d 0a 2f 2f | 20 3d 3d 3d 3d 3d 3d 3d |);....//| =======|
|00001530| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001540| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001550| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0a 2f 2f 20 43 72 |========|=..// Cr|
|00001560| 65 61 74 65 4d 65 6e 75 | 20 2d 20 41 74 74 65 6d |eateMenu| - Attem|
|00001570| 70 74 73 20 74 6f 20 43 | 72 65 61 74 65 20 61 20 |pts to C|reate a |
|00001580| 6d 65 6e 75 2e 20 20 52 | 65 74 75 72 6e 73 20 6e |menu. R|eturns n|
|00001590| 6f 6e 65 20 69 66 20 69 | 74 20 63 61 6e 27 74 0d |one if i|t can't.|
|000015a0| 0a 0d 0a 65 76 65 6e 74 | 20 47 55 49 50 61 67 65 |...event| GUIPage|
|000015b0| 20 43 72 65 61 74 65 4d | 65 6e 75 28 73 74 72 69 | CreateM|enu(stri|
|000015c0| 6e 67 20 4e 65 77 4d 65 | 6e 75 4e 61 6d 65 29 0d |ng NewMe|nuName).|
|000015d0| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 63 6c 61 73 73 |.{...loc|al class|
|000015e0| 3c 47 55 49 50 61 67 65 | 3e 20 4e 65 77 4d 65 6e |<GUIPage|> NewMen|
|000015f0| 75 43 6c 61 73 73 3b 0d | 0a 09 6c 6f 63 61 6c 20 |uClass;.|..local |
|00001600| 47 55 49 50 61 67 65 20 | 4e 65 77 4d 65 6e 75 3b |GUIPage |NewMenu;|
|00001610| 0d 0a 09 6c 6f 63 61 6c | 20 69 6e 74 20 69 3b 0d |...local| int i;.|
|00001620| 0a 0d 0a 09 2f 2f 20 4c | 6f 61 64 20 74 68 65 20 |....// L|oad the |
|00001630| 6d 65 6e 75 27 73 20 70 | 61 63 6b 61 67 65 20 69 |menu's p|ackage i|
|00001640| 66 20 6e 65 65 64 65 64 | 0d 0a 0d 0a 09 4e 65 77 |f needed|.....New|
|00001650| 4d 65 6e 75 43 6c 61 73 | 73 20 3d 20 63 6c 61 73 |MenuClas|s = clas|
|00001660| 73 3c 47 55 49 50 61 67 | 65 3e 28 44 79 6e 61 6d |s<GUIPag|e>(Dynam|
|00001670| 69 63 4c 6f 61 64 4f 62 | 6a 65 63 74 28 4e 65 77 |icLoadOb|ject(New|
|00001680| 4d 65 6e 75 4e 61 6d 65 | 2c 63 6c 61 73 73 27 63 |MenuName|,class'c|
|00001690| 6c 61 73 73 27 29 29 3b | 0d 0a 09 69 66 20 28 4e |lass'));|...if (N|
|000016a0| 65 77 4d 65 6e 75 43 6c | 61 73 73 20 21 3d 20 4e |ewMenuCl|ass != N|
|000016b0| 6f 6e 65 29 0d 0a 09 7b | 0d 0a 09 09 2f 2f 20 49 |one)...{|....// I|
|000016c0| 66 20 69 74 27 73 20 70 | 65 72 73 69 73 74 65 6e |f it's p|ersisten|
|000016d0| 74 2c 20 74 72 79 20 74 | 6f 20 66 69 6e 64 20 61 |t, try t|o find a|
|000016e0| 6e 20 69 6e 73 74 61 6e | 63 65 20 69 6e 20 74 68 |n instan|ce in th|
|000016f0| 65 20 50 65 72 73 69 73 | 74 65 6e 74 53 74 61 63 |e Persis|tentStac|
|00001700| 6b 2e 0d 0a 09 09 69 66 | 28 20 4e 65 77 4d 65 6e |k.....if|( NewMen|
|00001710| 75 43 6c 61 73 73 2e 64 | 65 66 61 75 6c 74 2e 62 |uClass.d|efault.b|
|00001720| 50 65 72 73 69 73 74 65 | 6e 74 20 29 0d 0a 09 09 |Persiste|nt )....|
|00001730| 7b 0d 0a 09 09 09 66 6f | 72 28 20 69 3d 30 3b 69 |{.....fo|r( i=0;i|
|00001740| 3c 50 65 72 73 69 73 74 | 65 6e 74 53 74 61 63 6b |<Persist|entStack|
|00001750| 2e 4c 65 6e 67 74 68 3b | 69 2b 2b 20 29 0d 0a 20 |.Length;|i++ ).. |
|00001760| 20 20 20 20 20 20 20 20 | 20 20 20 7b 0d 0a 09 09 | | {....|
|00001770| 09 09 69 66 28 20 50 65 | 72 73 69 73 74 65 6e 74 |..if( Pe|rsistent|
|00001780| 53 74 61 63 6b 5b 69 5d | 2e 43 6c 61 73 73 20 3d |Stack[i]|.Class =|
|00001790| 3d 20 4e 65 77 4d 65 6e | 75 43 6c 61 73 73 20 29 |= NewMen|uClass )|
|000017a0| 0d 0a 09 09 09 09 7b 0d | 0a 09 09 09 09 09 4e 65 |......{.|......Ne|
|000017b0| 77 4d 65 6e 75 20 3d 20 | 50 65 72 73 69 73 74 65 |wMenu = |Persiste|
|000017c0| 6e 74 53 74 61 63 6b 5b | 69 5d 3b 0d 0a 09 09 09 |ntStack[|i];.....|
|000017d0| 09 09 62 72 65 61 6b 3b | 0d 0a 09 09 09 09 7d 0d |..break;|......}.|
|000017e0| 0a 20 20 20 20 20 20 20 | 20 20 20 20 20 7d 0d 0a |. | }..|
|000017f0| 09 09 7d 0d 0a 0d 0a 09 | 09 2f 2f 20 4e 6f 74 20 |..}.....|.// Not |
|00001800| 66 6f 75 6e 64 2c 20 73 | 70 61 77 6e 20 61 20 6e |found, s|pawn a n|
|00001810| 65 77 20 6d 65 6e 75 0d | 0a 09 09 69 66 28 20 4e |ew menu.|...if( N|
|00001820| 65 77 4d 65 6e 75 20 3d | 3d 20 4e 6f 6e 65 20 29 |ewMenu =|= None )|
|00001830| 0d 0a 09 09 7b 0d 0a 09 | 09 09 4e 65 77 4d 65 6e |....{...|..NewMen|
|00001840| 75 20 3d 20 6e 65 77 28 | 4e 6f 6e 65 29 20 4e 65 |u = new(|None) Ne|
|00001850| 77 4d 65 6e 75 43 6c 61 | 73 73 3b 0d 0a 0d 0a 09 |wMenuCla|ss;.....|
|00001860| 09 09 2f 2f 20 43 68 65 | 63 6b 20 66 6f 72 20 65 |..// Che|ck for e|
|00001870| 72 72 6f 72 73 0d 0a 09 | 09 09 69 66 20 28 4e 65 |rrors...|..if (Ne|
|00001880| 77 4d 65 6e 75 20 3d 3d | 20 4e 6f 6e 65 29 0d 0a |wMenu ==| None)..|
|00001890| 09 09 09 7b 0d 0a 09 09 | 09 09 6c 6f 67 28 22 43 |...{....|..log("C|
|000018a0| 6f 75 6c 64 20 6e 6f 74 | 20 63 72 65 61 74 65 20 |ould not| create |
|000018b0| 72 65 71 75 65 73 74 65 | 64 20 6d 65 6e 75 22 40 |requeste|d menu"@|
|000018c0| 4e 65 77 4d 65 6e 75 4e | 61 6d 65 29 3b 0d 0a 09 |NewMenuN|ame);...|
|000018d0| 09 09 09 72 65 74 75 72 | 6e 20 4e 6f 6e 65 3b 0d |...retur|n None;.|
|000018e0| 0a 09 09 09 7d 0d 0a 09 | 09 09 65 6c 73 65 0d 0a |....}...|..else..|
|000018f0| 09 09 09 69 66 28 20 4e | 65 77 4d 65 6e 75 43 6c |...if( N|ewMenuCl|
|00001900| 61 73 73 2e 64 65 66 61 | 75 6c 74 2e 62 50 65 72 |ass.defa|ult.bPer|
|00001910| 73 69 73 74 65 6e 74 20 | 29 0d 0a 09 09 09 7b 0d |sistent |).....{.|
|00001920| 0a 09 09 09 09 2f 2f 20 | 53 61 76 65 20 69 6e 20 |.....// |Save in |
|00001930| 50 65 72 73 69 73 74 65 | 6e 74 53 74 61 63 6b 20 |Persiste|ntStack |
|00001940| 69 66 20 69 74 27 73 20 | 70 65 72 73 69 73 74 65 |if it's |persiste|
|00001950| 6e 74 2e 0d 0a 09 09 09 | 09 69 20 3d 20 50 65 72 |nt......|.i = Per|
|00001960| 73 69 73 74 65 6e 74 53 | 74 61 63 6b 2e 4c 65 6e |sistentS|tack.Len|
|00001970| 67 74 68 3b 0d 0a 09 09 | 09 09 50 65 72 73 69 73 |gth;....|..Persis|
|00001980| 74 65 6e 74 53 74 61 63 | 6b 2e 4c 65 6e 67 74 68 |tentStac|k.Length|
|00001990| 20 3d 20 69 2b 31 3b 0d | 0a 09 09 09 09 50 65 72 | = i+1;.|.....Per|
|000019a0| 73 69 73 74 65 6e 74 53 | 74 61 63 6b 5b 69 5d 20 |sistentS|tack[i] |
|000019b0| 3d 20 4e 65 77 4d 65 6e | 75 3b 0d 0a 09 09 09 7d |= NewMen|u;.....}|
|000019c0| 0d 0a 09 09 7d 0d 0a 09 | 09 72 65 74 75 72 6e 20 |....}...|.return |
|000019d0| 4e 65 77 4d 65 6e 75 3b | 0d 0a 09 7d 0d 0a 09 65 |NewMenu;|...}...e|
|000019e0| 6c 73 65 0d 0a 09 7b 0d | 0a 09 09 6c 6f 67 28 22 |lse...{.|...log("|
|000019f0| 43 6f 75 6c 64 20 6e 6f | 74 20 44 4c 4f 20 6d 65 |Could no|t DLO me|
|00001a00| 6e 75 20 27 22 24 4e 65 | 77 4d 65 6e 75 4e 61 6d |nu '"$Ne|wMenuNam|
|00001a10| 65 24 22 27 22 29 3b 0d | 0a 09 09 72 65 74 75 72 |e$"'");.|...retur|
|00001a20| 6e 20 6e 6f 6e 65 3b 0d | 0a 09 7d 0d 0a 0d 0a 7d |n none;.|..}....}|
|00001a30| 0d 0a 2f 2f 20 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..// ===|========|
|00001a40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001a50| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00001a60| 3d 3d 3d 3d 3d 0d 0a 2f | 2f 20 4f 70 65 6e 4d 65 |=====../|/ OpenMe|
|00001a70| 6e 75 20 2d 20 4f 70 65 | 6e 73 20 61 20 6e 65 77 |nu - Ope|ns a new|
|00001a80| 20 6d 65 6e 75 20 61 6e | 64 20 70 6c 61 63 65 73 | menu an|d places|
|00001a90| 20 69 74 20 6f 6e 20 74 | 6f 70 20 6f 66 20 74 68 | it on t|op of th|
|00001aa0| 65 20 73 74 61 63 6b 0d | 0a 0d 0a 0d 0a 0d 0a 65 |e stack.|.......e|
|00001ab0| 76 65 6e 74 20 62 6f 6f | 6c 20 4f 70 65 6e 4d 65 |vent boo|l OpenMe|
|00001ac0| 6e 75 28 73 74 72 69 6e | 67 20 4e 65 77 4d 65 6e |nu(strin|g NewMen|
|00001ad0| 75 4e 61 6d 65 2c 20 6f | 70 74 69 6f 6e 61 6c 20 |uName, o|ptional |
|00001ae0| 73 74 72 69 6e 67 20 50 | 61 72 61 6d 31 2c 20 6f |string P|aram1, o|
|00001af0| 70 74 69 6f 6e 61 6c 20 | 73 74 72 69 6e 67 20 50 |ptional |string P|
|00001b00| 61 72 61 6d 32 29 0d 0a | 7b 0d 0a 09 6c 6f 63 61 |aram2)..|{...loca|
|00001b10| 6c 20 47 55 49 50 61 67 | 65 20 4e 65 77 4d 65 6e |l GUIPag|e NewMen|
|00001b20| 75 2c 43 75 72 4d 65 6e | 75 3b 0d 0a 0d 0a 09 2f |u,CurMen|u;...../|
|00001b30| 2f 20 53 61 6e 69 74 79 | 20 43 68 65 63 6b 0d 0a |/ Sanity| Check..|
|00001b40| 0d 0a 09 2f 2f 6c 6f 67 | 28 22 47 55 49 43 6f 6e |...//log|("GUICon|
|00001b50| 74 72 6f 6c 6c 65 72 3a | 3a 4f 70 65 6e 4d 65 6e |troller:|:OpenMen|
|00001b60| 75 20 2d 20 41 74 74 65 | 6d 70 74 20 74 6f 20 6f |u - Atte|mpt to o|
|00001b70| 70 65 6e 20 6d 65 6e 75 | 20 5b 22 24 4e 65 77 4d |pen menu| ["$NewM|
|00001b80| 65 6e 75 4e 61 6d 65 24 | 22 5d 22 29 3b 0d 0a 09 |enuName$|"]");...|
|00001b90| 2f 2f 6c 6f 67 28 22 47 | 55 49 43 6f 6e 74 72 6f |//log("G|UIContro|
|00001ba0| 6c 6c 65 72 3a 3a 4d 65 | 6e 75 4d 6f 75 73 65 53 |ller::Me|nuMouseS|
|00001bb0| 65 6e 73 3d 22 24 4d 65 | 6e 75 4d 6f 75 73 65 53 |ens="$Me|nuMouseS|
|00001bc0| 65 6e 73 29 3b 0d 0a 0d | 0a 09 4e 65 77 4d 65 6e |ens);...|..NewMen|
|00001bd0| 75 20 3d 20 43 72 65 61 | 74 65 4d 65 6e 75 28 4e |u = Crea|teMenu(N|
|00001be0| 65 77 4d 65 6e 75 4e 61 | 6d 65 29 3b 0d 0a 0d 0a |ewMenuNa|me);....|
|00001bf0| 09 62 43 75 72 4d 65 6e | 75 49 6e 69 74 69 61 6c |.bCurMen|uInitial|
|00001c00| 69 7a 65 64 3d 66 61 6c | 73 65 3b 0d 0a 09 69 66 |ized=fal|se;...if|
|00001c10| 20 28 4e 65 77 4d 65 6e | 75 21 3d 4e 6f 6e 65 29 | (NewMen|u!=None)|
|00001c20| 0d 0a 09 7b 0d 0a 0d 0a | 09 09 43 75 72 4d 65 6e |...{....|..CurMen|
|00001c30| 75 20 3d 20 41 63 74 69 | 76 65 50 61 67 65 3b 0d |u = Acti|vePage;.|
|00001c40| 0a 0d 0a 09 09 4e 65 77 | 4d 65 6e 75 2e 50 61 72 |.....New|Menu.Par|
|00001c50| 65 6e 74 50 61 67 65 20 | 3d 20 43 75 72 4d 65 6e |entPage |= CurMen|
|00001c60| 75 3b 0d 0a 0d 0a 09 09 | 2f 2f 20 41 64 64 20 74 |u;......|// Add t|
|00001c70| 68 69 73 20 6d 65 6e 75 | 20 74 6f 20 74 68 65 20 |his menu| to the |
|00001c80| 73 74 61 63 6b 20 61 6e | 64 20 67 69 76 65 20 69 |stack an|d give i|
|00001c90| 74 20 66 6f 63 75 73 0d | 0a 0d 0a 09 09 4d 65 6e |t focus.|.....Men|
|00001ca0| 75 53 74 61 63 6b 2e 4c | 65 6e 67 74 68 20 3d 20 |uStack.L|ength = |
|00001cb0| 4d 65 6e 75 53 74 61 63 | 6b 2e 4c 65 6e 67 74 68 |MenuStac|k.Length|
|00001cc0| 2b 31 3b 0d 0a 09 09 4d | 65 6e 75 53 74 61 63 6b |+1;....M|enuStack|
|00001cd0| 5b 4d 65 6e 75 53 74 61 | 63 6b 2e 4c 65 6e 67 74 |[MenuSta|ck.Lengt|
|00001ce0| 68 2d 31 5d 20 3d 20 4e | 65 77 4d 65 6e 75 3b 0d |h-1] = N|ewMenu;.|
|00001cf0| 0a 0d 0a 09 09 41 63 74 | 69 76 65 50 61 67 65 20 |.....Act|ivePage |
|00001d00| 3d 20 4e 65 77 4d 65 6e | 75 3b 0d 0a 0d 0a 09 09 |= NewMen|u;......|
|00001d10| 52 65 73 65 74 46 6f 63 | 75 73 28 29 3b 0d 0a 0d |ResetFoc|us();...|
|00001d20| 0a 09 09 2f 2f 20 49 66 | 20 6e 6f 74 20 70 65 72 |...// If| not per|
|00001d30| 73 69 73 74 65 6e 74 2c | 20 49 6e 69 74 69 61 6c |sistent,| Initial|
|00001d40| 69 7a 65 20 74 68 69 73 | 20 4d 65 6e 75 0d 0a 0d |ize this| Menu...|
|00001d50| 0a 20 20 20 20 20 20 20 | 20 69 66 20 28 4e 65 77 |. | if (New|
|00001d60| 4d 65 6e 75 2e 43 6f 6e | 74 72 6f 6c 6c 65 72 20 |Menu.Con|troller |
|00001d70| 3d 3d 20 4e 6f 6e 65 29 | 0d 0a 09 09 09 4e 65 77 |== None)|.....New|
|00001d80| 4d 65 6e 75 2e 49 6e 69 | 74 43 6f 6d 70 6f 6e 65 |Menu.Ini|tCompone|
|00001d90| 6e 74 28 53 65 6c 66 2c | 20 6e 6f 6e 65 29 3b 0d |nt(Self,| none);.|
|00001da0| 0a 0d 0a 09 09 2f 2f 20 | 52 65 6d 6f 76 65 20 66 |.....// |Remove f|
|00001db0| 6f 63 75 73 20 66 72 6f | 6d 20 74 68 65 20 6c 61 |ocus fro|m the la|
|00001dc0| 73 74 20 6d 65 6e 75 0d | 0a 0d 0a 09 09 69 66 20 |st menu.|.....if |
|00001dd0| 28 43 75 72 4d 65 6e 75 | 21 3d 4e 6f 6e 65 29 0d |(CurMenu|!=None).|
|00001de0| 0a 09 09 7b 0d 0a 09 09 | 09 43 75 72 4d 65 6e 75 |...{....|.CurMenu|
|00001df0| 2e 4d 65 6e 75 53 74 61 | 74 65 20 3d 20 4d 53 41 |.MenuSta|te = MSA|
|00001e00| 54 5f 42 6c 75 72 72 79 | 3b 0d 0a 09 09 09 43 75 |T_Blurry|;.....Cu|
|00001e10| 72 4d 65 6e 75 2e 4f 6e | 44 65 41 63 74 69 76 61 |rMenu.On|DeActiva|
|00001e20| 74 65 28 29 3b 0d 0a 09 | 09 7d 0d 0a 0d 0a 09 09 |te();...|.}......|
|00001e30| 4e 65 77 4d 65 6e 75 2e | 43 68 65 63 6b 52 65 73 |NewMenu.|CheckRes|
|00001e40| 6f 6c 75 74 69 6f 6e 28 | 66 61 6c 73 65 29 3b 0d |olution(|false);.|
|00001e50| 0a 09 09 4e 65 77 4d 65 | 6e 75 2e 4f 70 65 6e 65 |...NewMe|nu.Opene|
|00001e60| 64 28 4e 6f 6e 65 29 3b | 09 2f 2f 20 50 61 73 73 |d(None);|.// Pass|
|00001e70| 20 61 6c 6f 6e 67 20 74 | 68 65 20 65 76 65 6e 74 | along t|he event|
|00001e80| 0d 0a 09 09 4e 65 77 4d | 65 6e 75 2e 4d 65 6e 75 |....NewM|enu.Menu|
|00001e90| 53 74 61 74 65 20 3d 20 | 4d 53 41 54 5f 46 6f 63 |State = |MSAT_Foc|
|00001ea0| 75 73 65 64 3b 0d 0a 09 | 09 4e 65 77 4d 65 6e 75 |used;...|.NewMenu|
|00001eb0| 2e 50 6c 61 79 4f 70 65 | 6e 53 6f 75 6e 64 28 29 |.PlayOpe|nSound()|
|00001ec0| 3b 0d 0a 0d 0a 09 09 53 | 65 74 43 6f 6e 74 72 6f |;......S|etContro|
|00001ed0| 6c 6c 65 72 53 74 61 74 | 75 73 28 74 72 75 65 29 |llerStat|us(true)|
|00001ee0| 3b 0d 0a 09 09 62 43 75 | 72 4d 65 6e 75 49 6e 69 |;....bCu|rMenuIni|
|00001ef0| 74 69 61 6c 69 7a 65 64 | 3d 74 72 75 65 3b 0d 0a |tialized|=true;..|
|00001f00| 0d 0a 09 09 4e 65 77 4d | 65 6e 75 2e 48 61 6e 64 |....NewM|enu.Hand|
|00001f10| 6c 65 50 61 72 61 6d 65 | 74 65 72 73 28 50 61 72 |leParame|ters(Par|
|00001f20| 61 6d 31 2c 20 50 61 72 | 61 6d 32 29 3b 0d 0a 0d |am1, Par|am2);...|
|00001f30| 0a 09 09 62 46 6f 72 63 | 65 4d 6f 75 73 65 43 68 |...bForc|eMouseCh|
|00001f40| 65 63 6b 20 3d 20 74 72 | 75 65 3b 0d 0a 0d 0a 20 |eck = tr|ue;.... |
|00001f50| 20 20 20 20 20 20 20 69 | 66 20 28 4e 65 77 4d 65 | i|f (NewMe|
|00001f60| 6e 75 2e 62 44 69 73 63 | 6f 6e 6e 65 63 74 4f 6e |nu.bDisc|onnectOn|
|00001f70| 4f 70 65 6e 29 0d 0a 20 | 20 20 20 20 20 20 20 7b |Open).. | {|
|00001f80| 0d 0a 20 20 20 20 20 20 | 20 20 09 43 6f 6e 73 6f |.. | .Conso|
|00001f90| 6c 65 43 6f 6d 6d 61 6e | 64 28 22 64 69 73 63 6f |leComman|d("disco|
|00001fa0| 6e 6e 65 63 74 22 29 3b | 0d 0a 20 20 20 20 20 20 |nnect");|.. |
|00001fb0| 20 20 7d 0d 0a 0d 0a 09 | 09 72 65 74 75 72 6e 20 | }.....|.return |
|00001fc0| 74 72 75 65 3b 0d 0a 09 | 7d 0d 0a 09 65 6c 73 65 |true;...|}...else|
|00001fd0| 0d 0a 09 7b 0d 0a 09 09 | 6c 6f 67 28 22 43 6f 75 |...{....|log("Cou|
|00001fe0| 6c 64 20 6e 6f 74 20 6f | 70 65 6e 20 6d 65 6e 75 |ld not o|pen menu|
|00001ff0| 22 40 4e 65 77 4d 65 6e | 75 4e 61 6d 65 29 3b 0d |"@NewMen|uName);.|
|00002000| 0a 09 09 72 65 74 75 72 | 6e 20 66 61 6c 73 65 3b |...retur|n false;|
|00002010| 0d 0a 09 7d 0d 0a 7d 0d | 0a 0d 0a 65 76 65 6e 74 |...}..}.|...event|
|00002020| 20 41 75 74 6f 4c 6f 61 | 64 4d 65 6e 75 73 28 29 | AutoLoa|dMenus()|
|00002030| 0d 0a 7b 0d 0a 09 6c 6f | 63 61 6c 20 47 55 49 50 |..{...lo|cal GUIP|
|00002040| 61 67 65 20 4e 65 77 4d | 65 6e 75 3b 0d 0a 20 20 |age NewM|enu;.. |
|00002050| 20 20 6c 6f 63 61 6c 20 | 69 6e 74 20 69 3b 0d 0a | local |int i;..|
|00002060| 0d 0a 20 20 20 20 73 75 | 70 65 72 2e 41 75 74 6f |.. su|per.Auto|
|00002070| 4c 6f 61 64 4d 65 6e 75 | 73 28 29 3b 0d 0a 0d 0a |LoadMenu|s();....|
|00002080| 20 20 20 20 66 6f 72 20 | 28 69 3d 30 3b 69 3c 41 | for |(i=0;i<A|
|00002090| 75 74 6f 4c 6f 61 64 2e | 4c 65 6e 67 74 68 3b 69 |utoLoad.|Length;i|
|000020a0| 2b 2b 29 0d 0a 09 7b 0d | 0a 20 20 20 20 09 4e 65 |++)...{.|. .Ne|
|000020b0| 77 4d 65 6e 75 20 3d 20 | 43 72 65 61 74 65 4d 65 |wMenu = |CreateMe|
|000020c0| 6e 75 28 41 75 74 6f 4c | 6f 61 64 5b 69 5d 29 3b |nu(AutoL|oad[i]);|
|000020d0| 0d 0a 09 09 69 66 20 28 | 4e 65 77 4d 65 6e 75 3d |....if (|NewMenu=|
|000020e0| 3d 4e 6f 6e 65 29 0d 0a | 20 20 20 20 20 20 20 20 |=None)..| |
|000020f0| 09 6c 6f 67 28 22 43 6f | 75 6c 64 20 6e 6f 74 20 |.log("Co|uld not |
|00002100| 61 75 74 6f 2d 6c 6f 61 | 64 22 40 41 75 74 6f 4c |auto-loa|d"@AutoL|
|00002110| 6f 61 64 5b 69 5d 29 3b | 0d 0a 09 7d 0d 0a 7d 0d |oad[i]);|...}..}.|
|00002120| 0a 0d 0a 2f 2f 20 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |...// ==|========|
|00002130| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002140| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002150| 3d 3d 3d 3d 3d 3d 0d 0a | 2f 2f 20 52 65 70 6c 61 |======..|// Repla|
|00002160| 63 65 73 20 61 20 6d 65 | 6e 75 20 69 6e 20 74 68 |ces a me|nu in th|
|00002170| 65 20 73 74 61 63 6b 2e | 20 20 72 65 74 75 72 6e |e stack.| return|
|00002180| 73 20 74 72 75 65 20 69 | 66 20 73 75 63 63 65 73 |s true i|f succes|
|00002190| 73 0d 0a 0d 0a 65 76 65 | 6e 74 20 62 6f 6f 6c 20 |s....eve|nt bool |
|000021a0| 52 65 70 6c 61 63 65 4d | 65 6e 75 28 73 74 72 69 |ReplaceM|enu(stri|
|000021b0| 6e 67 20 4e 65 77 4d 65 | 6e 75 4e 61 6d 65 2c 20 |ng NewMe|nuName, |
|000021c0| 6f 70 74 69 6f 6e 61 6c | 20 73 74 72 69 6e 67 20 |optional| string |
|000021d0| 50 61 72 61 6d 31 2c 20 | 6f 70 74 69 6f 6e 61 6c |Param1, |optional|
|000021e0| 20 73 74 72 69 6e 67 20 | 50 61 72 61 6d 32 29 0d | string |Param2).|
|000021f0| 0a 7b 0d 0a 09 6c 6f 63 | 61 6c 20 47 55 49 50 61 |.{...loc|al GUIPa|
|00002200| 67 65 20 4e 65 77 4d 65 | 6e 75 2c 43 75 72 4d 65 |ge NewMe|nu,CurMe|
|00002210| 6e 75 3b 0d 0a 0d 0a 09 | 4e 65 77 4d 65 6e 75 20 |nu;.....|NewMenu |
|00002220| 3d 20 43 72 65 61 74 65 | 4d 65 6e 75 28 4e 65 77 |= Create|Menu(New|
|00002230| 4d 65 6e 75 4e 61 6d 65 | 29 3b 0d 0a 09 62 43 75 |MenuName|);...bCu|
|00002240| 72 4d 65 6e 75 49 6e 69 | 74 69 61 6c 69 7a 65 64 |rMenuIni|tialized|
|00002250| 3d 66 61 6c 73 65 3b 0d | 0a 09 69 66 20 28 4e 65 |=false;.|..if (Ne|
|00002260| 77 4d 65 6e 75 21 3d 4e | 6f 6e 65 29 0d 0a 09 7b |wMenu!=N|one)...{|
|00002270| 0d 0a 09 09 43 75 72 4d | 65 6e 75 20 3d 20 41 63 |....CurM|enu = Ac|
|00002280| 74 69 76 65 50 61 67 65 | 3b 0d 0a 0d 0a 09 09 2f |tivePage|;....../|
|00002290| 2f 20 41 64 64 20 74 68 | 69 73 20 6d 65 6e 75 20 |/ Add th|is menu |
|000022a0| 74 6f 20 74 68 65 20 73 | 74 61 63 6b 20 61 6e 64 |to the s|tack and|
|000022b0| 20 67 69 76 65 20 69 74 | 20 66 6f 63 75 73 0d 0a | give it| focus..|
|000022c0| 0d 0a 09 09 4e 65 77 4d | 65 6e 75 2e 4d 65 6e 75 |....NewM|enu.Menu|
|000022d0| 53 74 61 74 65 20 3d 20 | 4d 53 41 54 5f 46 6f 63 |State = |MSAT_Foc|
|000022e0| 75 73 65 64 3b 0d 0a 0d | 0a 09 09 69 66 20 28 43 |used;...|...if (C|
|000022f0| 75 72 4d 65 6e 75 3d 3d | 4e 6f 6e 65 29 0d 0a 09 |urMenu==|None)...|
|00002300| 09 09 4d 65 6e 75 53 74 | 61 63 6b 2e 4c 65 6e 67 |..MenuSt|ack.Leng|
|00002310| 74 68 20 3d 20 4d 65 6e | 75 53 74 61 63 6b 2e 4c |th = Men|uStack.L|
|00002320| 65 6e 67 74 68 2b 31 3b | 0d 0a 20 20 20 20 20 20 |ength+1;|.. |
|00002330| 20 20 65 6c 73 65 0d 0a | 20 20 20 20 20 20 20 09 | else..| .|
|00002340| 09 43 75 72 4d 65 6e 75 | 2e 4f 6e 43 6c 6f 73 65 |.CurMenu|.OnClose|
|00002350| 28 66 61 6c 73 65 29 3b | 0d 0a 0d 0a 09 09 4d 65 |(false);|......Me|
|00002360| 6e 75 53 74 61 63 6b 5b | 4d 65 6e 75 53 74 61 63 |nuStack[|MenuStac|
|00002370| 6b 2e 4c 65 6e 67 74 68 | 2d 31 5d 20 3d 20 4e 65 |k.Length|-1] = Ne|
|00002380| 77 4d 65 6e 75 3b 0d 0a | 09 09 41 63 74 69 76 65 |wMenu;..|..Active|
|00002390| 50 61 67 65 20 3d 20 4e | 65 77 4d 65 6e 75 3b 0d |Page = N|ewMenu;.|
|000023a0| 0a 09 09 4e 65 77 4d 65 | 6e 75 2e 50 61 72 65 6e |...NewMe|nu.Paren|
|000023b0| 74 50 61 67 65 20 3d 20 | 43 75 72 4d 65 6e 75 2e |tPage = |CurMenu.|
|000023c0| 50 61 72 65 6e 74 50 61 | 67 65 3b 0d 0a 0d 0a 09 |ParentPa|ge;.....|
|000023d0| 09 52 65 73 65 74 46 6f | 63 75 73 28 29 3b 0d 0a |.ResetFo|cus();..|
|000023e0| 0d 0a 20 20 20 20 20 20 | 20 20 69 66 20 28 4e 65 |.. | if (Ne|
|000023f0| 77 4d 65 6e 75 2e 43 6f | 6e 74 72 6f 6c 6c 65 72 |wMenu.Co|ntroller|
|00002400| 20 3d 3d 20 4e 6f 6e 65 | 29 0d 0a 09 09 09 4e 65 | == None|).....Ne|
|00002410| 77 4d 65 6e 75 2e 49 6e | 69 74 43 6f 6d 70 6f 6e |wMenu.In|itCompon|
|00002420| 65 6e 74 28 53 65 6c 66 | 2c 20 4e 6f 6e 65 29 3b |ent(Self|, None);|
|00002430| 0d 0a 0d 0a 09 09 4e 65 | 77 4d 65 6e 75 2e 43 68 |......Ne|wMenu.Ch|
|00002440| 65 63 6b 52 65 73 6f 6c | 75 74 69 6f 6e 28 66 61 |eckResol|ution(fa|
|00002450| 6c 73 65 29 3b 0d 0a 09 | 09 4e 65 77 4d 65 6e 75 |lse);...|.NewMenu|
|00002460| 2e 4f 70 65 6e 65 64 28 | 4e 6f 6e 65 29 3b 09 09 |.Opened(|None);..|
|00002470| 09 09 09 09 2f 2f 20 50 | 61 73 73 20 61 6c 6f 6e |....// P|ass alon|
|00002480| 67 20 74 68 65 20 65 76 | 65 6e 74 0d 0a 09 09 4e |g the ev|ent....N|
|00002490| 65 77 4d 65 6e 75 2e 4d | 65 6e 75 53 74 61 74 65 |ewMenu.M|enuState|
|000024a0| 20 3d 20 4d 53 41 54 5f | 46 6f 63 75 73 65 64 3b | = MSAT_|Focused;|
|000024b0| 0d 0a 09 09 4e 65 77 4d | 65 6e 75 2e 4f 6e 41 63 |....NewM|enu.OnAc|
|000024c0| 74 69 76 61 74 65 28 29 | 3b 0d 0a 09 09 4e 65 77 |tivate()|;....New|
|000024d0| 4d 65 6e 75 2e 50 6c 61 | 79 4f 70 65 6e 53 6f 75 |Menu.Pla|yOpenSou|
|000024e0| 6e 64 28 29 3b 0d 0a 0d | 0a 09 09 53 65 74 43 6f |nd();...|...SetCo|
|000024f0| 6e 74 72 6f 6c 6c 65 72 | 53 74 61 74 75 73 28 74 |ntroller|Status(t|
|00002500| 72 75 65 29 3b 0d 0a 09 | 09 62 43 75 72 4d 65 6e |rue);...|.bCurMen|
|00002510| 75 49 6e 69 74 69 61 6c | 69 7a 65 64 3d 74 72 75 |uInitial|ized=tru|
|00002520| 65 3b 0d 0a 0d 0a 09 09 | 4e 65 77 4d 65 6e 75 2e |e;......|NewMenu.|
|00002530| 48 61 6e 64 6c 65 50 61 | 72 61 6d 65 74 65 72 73 |HandlePa|rameters|
|00002540| 28 50 61 72 61 6d 31 2c | 20 50 61 72 61 6d 32 29 |(Param1,| Param2)|
|00002550| 3b 0d 0a 09 09 62 46 6f | 72 63 65 4d 6f 75 73 65 |;....bFo|rceMouse|
|00002560| 43 68 65 63 6b 20 3d 20 | 74 72 75 65 3b 0d 0a 0d |Check = |true;...|
|00002570| 0a 20 20 20 20 20 20 20 | 20 69 66 20 28 43 75 72 |. | if (Cur|
|00002580| 4d 65 6e 75 21 3d 4e 6f | 6e 65 29 20 2f 2f 20 43 |Menu!=No|ne) // C|
|00002590| 6c 6f 73 65 20 6f 75 74 | 20 74 68 65 20 63 75 72 |lose out| the cur|
|000025a0| 72 65 6e 74 20 70 61 67 | 65 0d 0a 20 20 20 20 20 |rent pag|e.. |
|000025b0| 20 20 20 7b 0d 0a 09 09 | 20 20 20 20 43 75 72 4d | {....| CurM|
|000025c0| 65 6e 75 2e 50 61 72 65 | 6e 74 50 61 67 65 3d 4e |enu.Pare|ntPage=N|
|000025d0| 6f 6e 65 3b 0d 0a 0d 0a | 09 20 20 20 20 20 20 20 |one;....|. |
|000025e0| 20 69 66 20 28 21 43 75 | 72 4d 65 6e 75 2e 62 50 | if (!Cu|rMenu.bP|
|000025f0| 65 72 73 69 73 74 65 6e | 74 29 20 20 20 20 20 20 |ersisten|t) |
|00002600| 20 2f 2f 20 6b 65 65 70 | 20 61 63 63 65 73 73 20 | // keep| access |
|00002610| 74 6f 20 74 68 65 20 63 | 6f 6e 74 72 6f 6c 6c 65 |to the c|ontrolle|
|00002620| 72 20 69 66 20 77 65 20 | 61 72 65 20 6e 6f 74 20 |r if we |are not |
|00002630| 75 70 0d 0a 09 20 20 20 | 20 20 20 20 20 20 20 20 |up... | |
|00002640| 20 43 75 72 4d 65 6e 75 | 2e 46 72 65 65 28 29 3b | CurMenu|.Free();|
|00002650| 0d 0a 20 20 20 20 20 20 | 20 20 7d 0d 0a 0d 0a 0d |.. | }.....|
|00002660| 0a 09 09 72 65 74 75 72 | 6e 20 74 72 75 65 3b 0d |...retur|n true;.|
|00002670| 0a 09 7d 0d 0a 09 65 6c | 73 65 0d 0a 09 09 72 65 |..}...el|se....re|
|00002680| 74 75 72 6e 20 66 61 6c | 73 65 3b 0d 0a 7d 0d 0a |turn fal|se;..}..|
|00002690| 0d 0a 65 76 65 6e 74 20 | 62 6f 6f 6c 20 43 6c 6f |..event |bool Clo|
|000026a0| 73 65 4d 65 6e 75 28 6f | 70 74 69 6f 6e 61 6c 20 |seMenu(o|ptional |
|000026b0| 62 6f 6f 6c 20 62 43 61 | 6e 63 65 6c 65 64 29 09 |bool bCa|nceled).|
|000026c0| 2f 2f 20 43 6c 6f 73 65 | 20 74 68 65 20 74 6f 70 |// Close| the top|
|000026d0| 20 6d 65 6e 75 2e 20 20 | 72 65 74 75 72 6e 73 20 | menu. |returns |
|000026e0| 74 72 75 65 20 69 66 20 | 73 75 63 63 65 73 73 2e |true if |success.|
|000026f0| 0d 0a 7b 0d 0a 0d 0a 09 | 6c 6f 63 61 6c 20 47 55 |..{.....|local GU|
|00002700| 49 50 61 67 65 20 43 75 | 72 4d 65 6e 75 3b 0d 0a |IPage Cu|rMenu;..|
|00002710| 09 6c 6f 63 61 6c 20 69 | 6e 74 20 09 20 20 43 75 |.local i|nt . Cu|
|00002720| 72 49 6e 64 65 78 3b 0d | 0a 0d 0a 09 69 66 20 28 |rIndex;.|....if (|
|00002730| 4d 65 6e 75 53 74 61 63 | 6b 2e 4c 65 6e 67 74 68 |MenuStac|k.Length|
|00002740| 20 3c 3d 20 30 29 0d 0a | 09 7b 0d 0a 09 09 6c 6f | <= 0)..|.{....lo|
|00002750| 67 28 22 41 74 74 65 6d | 70 74 69 6e 67 20 74 6f |g("Attem|pting to|
|00002760| 20 63 6c 6f 73 65 20 61 | 20 6e 6f 6e 2d 65 78 69 | close a| non-exi|
|00002770| 73 74 69 6e 67 20 6d 65 | 6e 75 20 70 61 67 65 22 |sting me|nu page"|
|00002780| 29 3b 0d 0a 09 09 72 65 | 74 75 72 6e 20 66 61 6c |);....re|turn fal|
|00002790| 73 65 3b 0d 0a 09 7d 0d | 0a 0d 0a 09 43 75 72 49 |se;...}.|....CurI|
|000027a0| 6e 64 65 78 20 3d 20 4d | 65 6e 75 53 74 61 63 6b |ndex = M|enuStack|
|000027b0| 2e 4c 65 6e 67 74 68 2d | 31 3b 0d 0a 09 43 75 72 |.Length-|1;...Cur|
|000027c0| 4d 65 6e 75 20 3d 20 4d | 65 6e 75 53 74 61 63 6b |Menu = M|enuStack|
|000027d0| 5b 43 75 72 49 6e 64 65 | 78 5d 3b 0d 0a 0d 0a 09 |[CurInde|x];.....|
|000027e0| 6c 6f 67 28 22 47 55 49 | 43 6f 6e 74 72 6f 6c 6c |log("GUI|Controll|
|000027f0| 65 72 3a 3a 43 6c 6f 73 | 65 4d 65 6e 75 20 2d 20 |er::Clos|eMenu - |
|00002800| 22 40 43 75 72 4d 65 6e | 75 29 3b 0d 0a 0d 0a 09 |"@CurMen|u);.....|
|00002810| 2f 2f 20 52 65 6d 6f 76 | 65 20 74 68 65 20 6d 65 |// Remov|e the me|
|00002820| 6e 75 20 66 72 6f 6d 20 | 74 68 65 20 73 74 61 63 |nu from |the stac|
|00002830| 6b 0d 0a 09 4d 65 6e 75 | 53 74 61 63 6b 2e 52 65 |k...Menu|Stack.Re|
|00002840| 6d 6f 76 65 28 4d 65 6e | 75 53 74 61 63 6b 2e 4c |move(Men|uStack.L|
|00002850| 65 6e 67 74 68 2d 31 2c | 31 29 3b 0d 0a 0d 0a 09 |ength-1,|1);.....|
|00002860| 2f 2f 20 4c 6f 6f 6b 20 | 66 6f 72 20 74 68 65 20 |// Look |for the |
|00002870| 72 65 73 6f 6c 75 74 69 | 6f 6e 20 73 77 69 74 63 |resoluti|on switc|
|00002880| 68 0d 0a 0d 0a 09 43 75 | 72 4d 65 6e 75 2e 50 6c |h.....Cu|rMenu.Pl|
|00002890| 61 79 43 6c 6f 73 65 53 | 6f 75 6e 64 28 29 3b 09 |ayCloseS|ound();.|
|000028a0| 09 2f 2f 20 50 6c 61 79 | 20 74 68 65 20 63 6c 6f |.// Play| the clo|
|000028b0| 73 69 6e 67 20 73 6f 75 | 6e 64 0d 0a 09 43 75 72 |sing sou|nd...Cur|
|000028c0| 4d 65 6e 75 2e 43 6c 6f | 73 65 64 28 4e 6f 6e 65 |Menu.Clo|sed(None|
|000028d0| 2c 62 43 61 6e 63 65 6c | 65 64 29 3b 0d 0a 0d 0a |,bCancel|ed);....|
|000028e0| 20 20 20 20 43 75 72 4d | 65 6e 75 2e 50 61 72 65 | CurM|enu.Pare|
|000028f0| 6e 74 50 61 67 65 3d 4e | 6f 6e 65 3b 0d 0a 0d 0a |ntPage=N|one;....|
|00002900| 09 69 66 20 28 21 43 75 | 72 4d 65 6e 75 2e 62 50 |.if (!Cu|rMenu.bP|
|00002910| 65 72 73 69 73 74 65 6e | 74 29 09 09 2f 2f 20 6b |ersisten|t)..// k|
|00002920| 65 65 70 20 61 63 63 65 | 73 73 20 74 6f 20 74 68 |eep acce|ss to th|
|00002930| 65 20 63 6f 6e 74 72 6f | 6c 6c 65 72 20 69 66 20 |e contro|ller if |
|00002940| 77 65 20 61 72 65 20 6e | 6f 74 20 75 70 0d 0a 09 |we are n|ot up...|
|00002950| 09 43 75 72 4d 65 6e 75 | 2e 46 72 65 65 28 29 3b |.CurMenu|.Free();|
|00002960| 09 09 09 09 2f 2f 20 46 | 72 65 65 20 75 70 20 74 |....// F|ree up t|
|00002970| 68 69 73 20 6d 65 6e 75 | 0d 0a 0d 0a 09 4d 6f 76 |his menu|.....Mov|
|00002980| 65 43 6f 6e 74 72 6f 6c | 20 3d 20 4e 6f 6e 65 3b |eControl| = None;|
|00002990| 0d 0a 09 53 6b 69 70 43 | 6f 6e 74 72 6f 6c 20 3d |...SkipC|ontrol =|
|000029a0| 20 4e 6f 6e 65 3b 0d 0a | 0d 0a 09 2f 2f 20 47 61 | None;..|...// Ga|
|000029b0| 62 20 74 68 65 20 6e 65 | 78 74 20 70 61 67 65 20 |b the ne|xt page |
|000029c0| 6f 6e 20 74 68 65 20 73 | 74 61 63 6b 0d 0a 09 62 |on the s|tack...b|
|000029d0| 43 75 72 4d 65 6e 75 49 | 6e 69 74 69 61 6c 69 7a |CurMenuI|nitializ|
|000029e0| 65 64 3d 66 61 6c 73 65 | 3b 0d 0a 09 69 66 20 28 |ed=false|;...if (|
|000029f0| 4d 65 6e 75 53 74 61 63 | 6b 2e 4c 65 6e 67 74 68 |MenuStac|k.Length|
|00002a00| 3e 30 29 09 2f 2f 20 50 | 61 73 73 20 63 6f 6e 74 |>0).// P|ass cont|
|00002a10| 72 6f 6c 20 62 61 63 6b | 20 74 6f 20 74 68 65 20 |rol back| to the |
|00002a20| 70 72 65 76 69 6f 75 73 | 20 6d 65 6e 75 0d 0a 09 |previous| menu...|
|00002a30| 7b 0d 0a 09 09 41 63 74 | 69 76 65 50 61 67 65 20 |{....Act|ivePage |
|00002a40| 3d 20 4d 65 6e 75 53 74 | 61 63 6b 5b 4d 65 6e 75 |= MenuSt|ack[Menu|
|00002a50| 53 74 61 63 6b 2e 4c 65 | 6e 67 74 68 2d 31 5d 3b |Stack.Le|ngth-1];|
|00002a60| 0d 0a 09 09 41 63 74 69 | 76 65 50 61 67 65 2e 4d |....Acti|vePage.M|
|00002a70| 65 6e 75 53 74 61 74 65 | 20 3d 20 4d 53 41 54 5f |enuState| = MSAT_|
|00002a80| 46 6f 63 75 73 65 64 3b | 0d 0a 09 09 41 63 74 69 |Focused;|....Acti|
|00002a90| 76 65 50 61 67 65 2e 43 | 68 65 63 6b 52 65 73 6f |vePage.C|heckReso|
|00002aa0| 6c 75 74 69 6f 6e 28 74 | 72 75 65 29 3b 0d 0a 0d |lution(t|rue);...|
|00002ab0| 0a 09 09 41 63 74 69 76 | 65 50 61 67 65 2e 4f 70 |...Activ|ePage.Op|
|00002ac0| 65 6e 65 64 28 6e 6f 6e | 65 29 3b 0d 0a 09 09 41 |ened(non|e);....A|
|00002ad0| 63 74 69 76 65 50 61 67 | 65 2e 4f 6e 41 63 74 69 |ctivePag|e.OnActi|
|00002ae0| 76 61 74 65 28 29 3b 0d | 0a 0d 0a 09 09 41 63 74 |vate();.|.....Act|
|00002af0| 69 76 65 43 6f 6e 74 72 | 6f 6c 20 3d 20 6e 6f 6e |iveContr|ol = non|
|00002b00| 65 3b 0d 0a 0d 0a 09 09 | 41 63 74 69 76 65 50 61 |e;......|ActivePa|
|00002b10| 67 65 2e 46 6f 63 75 73 | 46 69 72 73 74 28 4e 6f |ge.Focus|First(No|
|00002b20| 6e 65 29 3b 0d 0a 09 7d | 0d 0a 09 65 6c 73 65 0d |ne);...}|...else.|
|00002b30| 0a 09 7b 0d 0a 0d 0a 09 | 09 69 66 20 28 21 43 75 |..{.....|.if (!Cu|
|00002b40| 72 4d 65 6e 75 2e 62 41 | 6c 6c 6f 77 65 64 41 73 |rMenu.bA|llowedAs|
|00002b50| 4c 61 73 74 29 0d 0a 09 | 09 7b 0d 0a 09 09 09 4f |Last)...|.{.....O|
|00002b60| 70 65 6e 4d 65 6e 75 28 | 47 65 74 4d 61 69 6e 4d |penMenu(|GetMainM|
|00002b70| 65 6e 75 43 6c 61 73 73 | 28 29 29 3b 0d 0a 09 09 |enuClass|());....|
|00002b80| 09 72 65 74 75 72 6e 20 | 74 72 75 65 3b 0d 0a 09 |.return |true;...|
|00002b90| 09 7d 0d 0a 0d 0a 09 09 | 41 63 74 69 76 65 50 61 |.}......|ActivePa|
|00002ba0| 67 65 20 3d 20 4e 6f 6e | 65 3b 0d 0a 20 09 09 53 |ge = Non|e;.. ..S|
|00002bb0| 65 74 43 6f 6e 74 72 6f | 6c 6c 65 72 53 74 61 74 |etContro|llerStat|
|00002bc0| 75 73 28 66 61 6c 73 65 | 29 3b 0d 0a 09 7d 0d 0a |us(false|);...}..|
|00002bd0| 0d 0a 09 62 43 75 72 4d | 65 6e 75 49 6e 69 74 69 |...bCurM|enuIniti|
|00002be0| 61 6c 69 7a 65 64 3d 74 | 72 75 65 3b 0d 0a 0d 0a |alized=t|rue;....|
|00002bf0| 09 62 46 6f 72 63 65 4d | 6f 75 73 65 43 68 65 63 |.bForceM|ouseChec|
|00002c00| 6b 20 3d 20 74 72 75 65 | 3b 0d 0a 0d 0a 09 72 65 |k = true|;.....re|
|00002c10| 74 75 72 6e 20 74 72 75 | 65 3b 0d 0a 7d 0d 0a 0d |turn tru|e;..}...|
|00002c20| 0a 66 75 6e 63 74 69 6f | 6e 20 62 6f 6f 6c 20 43 |.functio|n bool C|
|00002c30| 6c 6f 73 65 54 6f 20 28 | 6e 61 6d 65 20 6d 65 6e |loseTo (|name men|
|00002c40| 75 29 0d 0a 7b 0d 0a 20 | 20 20 20 77 68 69 6c 65 |u)..{.. | while|
|00002c50| 20 28 21 73 65 6c 66 2e | 54 6f 70 50 61 67 65 28 | (!self.|TopPage(|
|00002c60| 29 2e 49 73 41 28 6d 65 | 6e 75 29 20 26 26 20 4d |).IsA(me|nu) && M|
|00002c70| 65 6e 75 53 74 61 63 6b | 2e 4c 65 6e 67 74 68 3e |enuStack|.Length>|
|00002c80| 30 29 0d 0a 20 20 20 20 | 20 20 20 20 43 6c 6f 73 |0).. | Clos|
|00002c90| 65 4d 65 6e 75 28 66 61 | 6c 73 65 29 3b 0d 0a 20 |eMenu(fa|lse);.. |
|00002ca0| 20 20 20 72 65 74 75 72 | 6e 20 74 72 75 65 3b 0d | retur|n true;.|
|00002cb0| 0a 7d 0d 0a 0d 0a 66 75 | 6e 63 74 69 6f 6e 20 47 |.}....fu|nction G|
|00002cc0| 55 49 50 61 67 65 20 54 | 6f 70 50 61 67 65 28 29 |UIPage T|opPage()|
|00002cd0| 0d 0a 7b 0d 0a 09 72 65 | 74 75 72 6e 20 41 63 74 |..{...re|turn Act|
|00002ce0| 69 76 65 50 61 67 65 3b | 0d 0a 7d 0d 0a 0d 0a 66 |ivePage;|..}....f|
|00002cf0| 75 6e 63 74 69 6f 6e 20 | 62 6f 6f 6c 20 43 68 65 |unction |bool Che|
|00002d00| 63 6b 45 78 69 73 74 73 | 20 28 6e 61 6d 65 20 6d |ckExists| (name m|
|00002d10| 65 6e 75 29 0d 0a 7b 0d | 0a 20 20 20 20 6c 6f 63 |enu)..{.|. loc|
|00002d20| 61 6c 20 69 6e 74 20 69 | 3b 0d 0a 0d 0a 20 20 20 |al int i|;.... |
|00002d30| 20 66 6f 72 20 28 69 20 | 3d 20 30 3b 20 69 20 3c | for (i |= 0; i <|
|00002d40| 20 4d 65 6e 75 53 74 61 | 63 6b 2e 4c 65 6e 67 74 | MenuSta|ck.Lengt|
|00002d50| 68 3b 20 2b 2b 69 29 0d | 0a 20 20 20 20 20 20 20 |h; ++i).|. |
|00002d60| 20 69 66 20 28 73 65 6c | 66 2e 4d 65 6e 75 53 74 | if (sel|f.MenuSt|
|00002d70| 61 63 6b 5b 69 5d 2e 49 | 73 41 28 6d 65 6e 75 29 |ack[i].I|sA(menu)|
|00002d80| 29 0d 0a 20 20 20 20 20 | 20 20 20 20 20 20 20 72 |).. | r|
|00002d90| 65 74 75 72 6e 20 74 72 | 75 65 3b 0d 0a 0d 0a 20 |eturn tr|ue;.... |
|00002da0| 20 20 20 72 65 74 75 72 | 6e 20 66 61 6c 73 65 3b | retur|n false;|
|00002db0| 0d 0a 7d 0d 0a 0d 0a 66 | 75 6e 63 74 69 6f 6e 20 |..}....f|unction |
|00002dc0| 53 65 74 43 6f 6e 74 72 | 6f 6c 6c 65 72 53 74 61 |SetContr|ollerSta|
|00002dd0| 74 75 73 28 62 6f 6f 6c | 20 4f 6e 29 0d 0a 7b 0d |tus(bool| On)..{.|
|00002de0| 0a 09 62 41 63 74 69 76 | 65 20 3d 20 4f 6e 3b 0d |..bActiv|e = On;.|
|00002df0| 0a 09 62 56 69 73 69 62 | 6c 65 20 3d 20 4f 6e 3b |..bVisib|le = On;|
|00002e00| 0d 0a 09 62 52 65 71 75 | 69 72 65 73 54 69 63 6b |...bRequ|iresTick|
|00002e10| 3d 4f 6e 3b 0d 0a 0d 0a | 09 2f 2f 20 41 74 74 65 |=On;....|.// Atte|
|00002e20| 6d 70 74 20 74 6f 20 50 | 61 75 73 65 20 61 73 20 |mpt to P|ause as |
|00002e30| 77 65 6c 6c 20 61 73 20 | 73 68 6f 77 20 74 68 65 |well as |show the|
|00002e40| 20 77 69 6e 64 6f 77 73 | 20 6d 6f 75 73 65 20 63 | windows| mouse c|
|00002e50| 75 72 73 6f 72 2e 0d 0a | 0d 0a 2f 2f 09 56 69 65 |ursor...|..//.Vie|
|00002e60| 77 70 6f 72 74 4f 77 6e | 65 72 2e 41 63 74 6f 72 |wportOwn|er.Actor|
|00002e70| 2e 4c 65 76 65 6c 2e 47 | 61 6d 65 2e 53 65 74 50 |.Level.G|ame.SetP|
|00002e80| 61 75 73 65 28 4f 6e 2c | 20 56 69 65 77 70 6f 72 |ause(On,| Viewpor|
|00002e90| 74 4f 77 6e 65 72 2e 41 | 63 74 6f 72 29 3b 0d 0a |tOwner.A|ctor);..|
|00002ea0| 09 56 69 65 77 70 6f 72 | 74 4f 77 6e 65 72 2e 62 |.Viewpor|tOwner.b|
|00002eb0| 53 68 6f 77 57 69 6e 64 | 6f 77 73 4d 6f 75 73 65 |ShowWind|owsMouse|
|00002ec0| 3d 4f 6e 3b 0d 0a 0d 0a | 09 2f 2f 20 41 64 64 20 |=On;....|.// Add |
|00002ed0| 63 6f 64 65 20 74 6f 20 | 70 61 75 73 65 2f 75 6e |code to |pause/un|
|00002ee0| 70 61 75 73 65 2f 68 69 | 64 65 2f 65 74 63 20 74 |pause/hi|de/etc t|
|00002ef0| 68 65 20 67 61 6d 65 20 | 68 65 72 65 2e 0d 0a 0d |he game |here....|
|00002f00| 0a 09 69 66 20 28 4f 6e | 29 0d 0a 09 09 62 49 67 |..if (On|)....bIg|
|00002f10| 6e 6f 72 65 55 6e 74 69 | 6c 50 72 65 73 73 20 3d |noreUnti|lPress =|
|00002f20| 20 74 72 75 65 3b 0d 0a | 09 65 6c 73 65 0d 0a 09 | true;..|.else...|
|00002f30| 09 56 69 65 77 70 6f 72 | 74 4f 77 6e 65 72 2e 41 |.Viewpor|tOwner.A|
|00002f40| 63 74 6f 72 2e 43 6f 6e | 73 6f 6c 65 43 6f 6d 6d |ctor.Con|soleComm|
|00002f50| 61 6e 64 28 22 74 6f 67 | 67 6c 65 69 6d 65 20 30 |and("tog|gleime 0|
|00002f60| 22 29 3b 0d 0a 7d 0d 0a | 0d 0a 0d 0a 65 76 65 6e |");..}..|....even|
|00002f70| 74 20 43 6c 6f 73 65 41 | 6c 6c 28 62 6f 6f 6c 20 |t CloseA|ll(bool |
|00002f80| 62 43 61 6e 63 65 6c 29 | 0d 0a 7b 0d 0a 09 6c 6f |bCancel)|..{...lo|
|00002f90| 63 61 6c 20 69 6e 74 20 | 69 3b 0d 0a 0d 0a 09 2f |cal int |i;...../|
|00002fa0| 2f 20 43 6c 6f 73 65 20 | 74 68 65 20 63 75 72 72 |/ Close |the curr|
|00002fb0| 65 6e 74 20 6d 65 6e 75 | 20 6d 61 6e 75 61 6c 6c |ent menu| manuall|
|00002fc0| 79 20 62 65 66 6f 72 65 | 20 77 65 20 63 6c 65 61 |y before| we clea|
|00002fd0| 6e 20 75 70 20 74 68 65 | 20 73 74 61 63 6b 2e 0d |n up the| stack..|
|00002fe0| 0a 09 69 66 28 20 4d 65 | 6e 75 53 74 61 63 6b 2e |..if( Me|nuStack.|
|00002ff0| 4c 65 6e 67 74 68 20 3e | 3d 20 30 20 29 0d 0a 09 |Length >|= 0 )...|
|00003000| 7b 0d 0a 09 09 69 66 20 | 28 20 21 43 6c 6f 73 65 |{....if |( !Close|
|00003010| 4d 65 6e 75 28 62 43 61 | 6e 63 65 6c 29 20 29 0d |Menu(bCa|ncel) ).|
|00003020| 0a 09 09 09 72 65 74 75 | 72 6e 3b 0d 0a 09 7d 0d |....retu|rn;...}.|
|00003030| 0a 0d 0a 09 66 6f 72 20 | 28 69 3d 30 3b 69 3c 4d |....for |(i=0;i<M|
|00003040| 65 6e 75 53 74 61 63 6b | 2e 4c 65 6e 67 74 68 3b |enuStack|.Length;|
|00003050| 69 2b 2b 29 0d 0a 09 7b | 0d 0a 09 09 4d 65 6e 75 |i++)...{|....Menu|
|00003060| 53 74 61 63 6b 5b 69 5d | 2e 43 68 65 63 6b 52 65 |Stack[i]|.CheckRe|
|00003070| 73 6f 6c 75 74 69 6f 6e | 28 74 72 75 65 29 3b 0d |solution|(true);.|
|00003080| 0a 20 20 20 20 20 20 20 | 20 4d 65 6e 75 53 74 61 |. | MenuSta|
|00003090| 63 6b 5b 69 5d 2e 50 61 | 72 65 6e 74 50 61 67 65 |ck[i].Pa|rentPage|
|000030a0| 20 3d 20 4e 6f 6e 65 3b | 0d 0a 0d 0a 20 20 20 20 | = None;|.... |
|000030b0| 09 69 66 20 28 21 4d 65 | 6e 75 53 74 61 63 6b 5b |.if (!Me|nuStack[|
|000030c0| 69 5d 2e 62 50 65 72 73 | 69 73 74 65 6e 74 29 0d |i].bPers|istent).|
|000030d0| 0a 20 20 20 20 20 20 20 | 20 09 4d 65 6e 75 53 74 |. | .MenuSt|
|000030e0| 61 63 6b 5b 69 5d 2e 46 | 72 65 65 28 29 3b 0d 0a |ack[i].F|ree();..|
|000030f0| 0d 0a 09 09 4d 65 6e 75 | 53 74 61 63 6b 5b 69 5d |....Menu|Stack[i]|
|00003100| 20 3d 20 4e 6f 6e 65 3b | 0d 0a 09 7d 0d 0a 0d 0a | = None;|...}....|
|00003110| 09 69 66 20 28 47 61 6d | 65 52 65 73 6f 6c 75 74 |.if (Gam|eResolut|
|00003120| 69 6f 6e 21 3d 22 22 29 | 0d 0a 09 7b 0d 0a 09 09 |ion!="")|...{....|
|00003130| 56 69 65 77 70 6f 72 74 | 4f 77 6e 65 72 2e 41 63 |Viewport|Owner.Ac|
|00003140| 74 6f 72 2e 43 6f 6e 73 | 6f 6c 65 43 6f 6d 6d 61 |tor.Cons|oleComma|
|00003150| 6e 64 28 22 53 45 54 52 | 45 53 22 40 47 61 6d 65 |nd("SETR|ES"@Game|
|00003160| 52 65 73 6f 6c 75 74 69 | 6f 6e 29 3b 0d 0a 09 09 |Resoluti|on);....|
|00003170| 47 61 6d 65 52 65 73 6f | 6c 75 74 69 6f 6e 3d 22 |GameReso|lution="|
|00003180| 22 3b 0d 0a 09 7d 0d 0a | 0d 0a 0d 0a 20 20 20 20 |";...}..|.... |
|00003190| 41 63 74 69 76 65 50 61 | 67 65 3d 4e 6f 6e 65 3b |ActivePa|ge=None;|
|000031a0| 0d 0a 09 4d 65 6e 75 53 | 74 61 63 6b 2e 52 65 6d |...MenuS|tack.Rem|
|000031b0| 6f 76 65 28 30 2c 4d 65 | 6e 75 53 74 61 63 6b 2e |ove(0,Me|nuStack.|
|000031c0| 4c 65 6e 67 74 68 29 3b | 0d 0a 09 53 65 74 43 6f |Length);|...SetCo|
|000031d0| 6e 74 72 6f 6c 6c 65 72 | 53 74 61 74 75 73 28 66 |ntroller|Status(f|
|000031e0| 61 6c 73 65 29 3b 0d 0a | 0d 0a 7d 0d 0a 0d 0a 65 |alse);..|..}....e|
|000031f0| 76 65 6e 74 20 49 6e 69 | 74 69 61 6c 69 7a 65 43 |vent Ini|tializeC|
|00003200| 6f 6e 74 72 6f 6c 6c 65 | 72 28 29 0d 0a 7b 0d 0a |ontrolle|r()..{..|
|00003210| 09 6c 6f 63 61 6c 20 69 | 6e 74 20 69 3b 0d 0a 09 |.local i|nt i;...|
|00003220| 6c 6f 63 61 6c 20 63 6c | 61 73 73 3c 47 55 49 53 |local cl|ass<GUIS|
|00003230| 74 79 6c 65 73 3e 20 4e | 65 77 53 74 79 6c 65 43 |tyles> N|ewStyleC|
|00003240| 6c 61 73 73 3b 0d 0a 0d | 0a 09 66 6f 72 20 28 69 |lass;...|..for (i|
|00003250| 3d 30 3b 69 3c 53 74 79 | 6c 65 4e 61 6d 65 73 2e |=0;i<Sty|leNames.|
|00003260| 4c 65 6e 67 74 68 3b 69 | 2b 2b 29 0d 0a 09 7b 0d |Length;i|++)...{.|
|00003270| 0a 09 09 4e 65 77 53 74 | 79 6c 65 43 6c 61 73 73 |...NewSt|yleClass|
|00003280| 20 3d 20 63 6c 61 73 73 | 3c 47 55 49 53 74 79 6c | = class|<GUIStyl|
|00003290| 65 73 3e 28 44 79 6e 61 | 6d 69 63 4c 6f 61 64 4f |es>(Dyna|micLoadO|
|000032a0| 62 6a 65 63 74 28 53 74 | 79 6c 65 4e 61 6d 65 73 |bject(St|yleNames|
|000032b0| 5b 69 5d 2c 63 6c 61 73 | 73 27 63 6c 61 73 73 27 |[i],clas|s'class'|
|000032c0| 29 29 3b 0d 0a 0d 0a 09 | 09 69 66 20 28 4e 65 77 |));.....|.if (New|
|000032d0| 53 74 79 6c 65 43 6c 61 | 73 73 20 21 3d 20 4e 6f |StyleCla|ss != No|
|000032e0| 6e 65 29 0d 0a 09 09 09 | 69 66 20 28 21 52 65 67 |ne).....|if (!Reg|
|000032f0| 69 73 74 65 72 53 74 79 | 6c 65 28 4e 65 77 53 74 |isterSty|le(NewSt|
|00003300| 79 6c 65 43 6c 61 73 73 | 29 29 0d 0a 09 09 09 09 |yleClass|))......|
|00003310| 6c 6f 67 28 22 43 6f 75 | 6c 64 20 6e 6f 74 20 63 |log("Cou|ld not c|
|00003320| 72 65 61 74 65 20 72 65 | 71 75 65 73 74 65 64 20 |reate re|quested |
|00003330| 73 74 79 6c 65 22 40 53 | 74 79 6c 65 4e 61 6d 65 |style"@S|tyleName|
|00003340| 73 5b 69 5d 29 3b 0d 0a | 0d 0a 09 7d 0d 0a 7d 0d |s[i]);..|...}..}.|
|00003350| 0a 0d 0a 66 75 6e 63 74 | 69 6f 6e 20 62 6f 6f 6c |...funct|ion bool|
|00003360| 20 52 65 67 69 73 74 65 | 72 53 74 79 6c 65 28 63 | Registe|rStyle(c|
|00003370| 6c 61 73 73 3c 47 55 49 | 53 74 79 6c 65 73 3e 20 |lass<GUI|Styles> |
|00003380| 53 74 79 6c 65 43 6c 61 | 73 73 29 0d 0a 7b 0d 0a |StyleCla|ss)..{..|
|00003390| 6c 6f 63 61 6c 20 47 55 | 49 53 74 79 6c 65 73 20 |local GU|IStyles |
|000033a0| 4e 65 77 53 74 79 6c 65 | 3b 0d 0a 0d 0a 09 69 66 |NewStyle|;.....if|
|000033b0| 20 28 53 74 79 6c 65 43 | 6c 61 73 73 20 21 3d 20 | (StyleC|lass != |
|000033c0| 4e 6f 6e 65 20 26 26 20 | 21 53 74 79 6c 65 43 6c |None && |!StyleCl|
|000033d0| 61 73 73 2e 64 65 66 61 | 75 6c 74 2e 62 52 65 67 |ass.defa|ult.bReg|
|000033e0| 69 73 74 65 72 65 64 29 | 0d 0a 09 7b 0d 0a 09 09 |istered)|...{....|
|000033f0| 4e 65 77 53 74 79 6c 65 | 20 3d 20 6e 65 77 28 4e |NewStyle| = new(N|
|00003400| 6f 6e 65 29 20 53 74 79 | 6c 65 43 6c 61 73 73 3b |one) Sty|leClass;|
|00003410| 0d 0a 0d 0a 09 09 2f 2f | 20 43 68 65 63 6b 20 66 |......//| Check f|
|00003420| 6f 72 20 65 72 72 6f 72 | 73 0d 0a 0d 0a 09 09 69 |or error|s......i|
|00003430| 66 20 28 4e 65 77 53 74 | 79 6c 65 20 21 3d 20 4e |f (NewSt|yle != N|
|00003440| 6f 6e 65 29 0d 0a 09 09 | 7b 0d 0a 09 09 09 2f 2f |one)....|{.....//|
|00003450| 20 44 79 6e 61 6d 69 63 | 20 41 72 72 61 79 20 41 | Dynamic| Array A|
|00003460| 75 74 6f 20 53 69 7a 65 | 73 20 53 74 79 6c 65 53 |uto Size|s StyleS|
|00003470| 74 61 63 6b 2e 0d 0a 09 | 09 09 53 74 79 6c 65 53 |tack....|..StyleS|
|00003480| 74 61 63 6b 5b 53 74 79 | 6c 65 53 74 61 63 6b 2e |tack[Sty|leStack.|
|00003490| 4c 65 6e 67 74 68 5d 20 | 3d 20 4e 65 77 53 74 79 |Length] |= NewSty|
|000034a0| 6c 65 3b 0d 0a 09 09 09 | 4e 65 77 53 74 79 6c 65 |le;.....|NewStyle|
|000034b0| 2e 43 6f 6e 74 72 6f 6c | 6c 65 72 20 3d 20 73 65 |.Control|ler = se|
|000034c0| 6c 66 3b 0d 0a 09 09 09 | 4e 65 77 53 74 79 6c 65 |lf;.....|NewStyle|
|000034d0| 2e 49 6e 69 74 69 61 6c | 69 7a 65 28 29 3b 0d 0a |.Initial|ize();..|
|000034e0| 09 09 09 72 65 74 75 72 | 6e 20 74 72 75 65 3b 0d |...retur|n true;.|
|000034f0| 0a 09 09 7d 0d 0a 09 7d | 0d 0a 09 72 65 74 75 72 |...}...}|...retur|
|00003500| 6e 20 66 61 6c 73 65 3b | 0d 0a 7d 0d 0a 0d 0a 65 |n false;|..}....e|
|00003510| 76 65 6e 74 20 43 68 61 | 6e 67 65 46 6f 63 75 73 |vent Cha|ngeFocus|
|00003520| 28 47 55 49 43 6f 6d 70 | 6f 6e 65 6e 74 20 57 68 |(GUIComp|onent Wh|
|00003530| 6f 29 0d 0a 7b 0d 0a 09 | 72 65 74 75 72 6e 3b 0d |o)..{...|return;.|
|00003540| 0a 7d 0d 0a 0d 0a 66 75 | 6e 63 74 69 6f 6e 20 52 |.}....fu|nction R|
|00003550| 65 73 65 74 46 6f 63 75 | 73 28 29 0d 0a 7b 0d 0a |esetFocu|s()..{..|
|00003560| 09 6c 6f 63 61 6c 20 69 | 6e 74 20 69 3b 0d 0a 0d |.local i|nt i;...|
|00003570| 0a 09 69 66 20 28 41 63 | 74 69 76 65 43 6f 6e 74 |..if (Ac|tiveCont|
|00003580| 72 6f 6c 21 3d 4e 6f 6e | 65 29 0d 0a 09 7b 0d 0a |rol!=Non|e)...{..|
|00003590| 09 09 41 63 74 69 76 65 | 43 6f 6e 74 72 6f 6c 2e |..Active|Control.|
|000035a0| 4d 65 6e 75 53 74 61 74 | 65 43 68 61 6e 67 65 28 |MenuStat|eChange(|
|000035b0| 4d 53 41 54 5f 42 6c 75 | 72 72 79 29 3b 0d 0a 09 |MSAT_Blu|rry);...|
|000035c0| 09 41 63 74 69 76 65 43 | 6f 6e 74 72 6f 6c 3d 4e |.ActiveC|ontrol=N|
|000035d0| 6f 6e 65 3b 0d 0a 09 7d | 0d 0a 0d 0a 20 20 20 20 |one;...}|.... |
|000035e0| 66 6f 72 20 28 69 3d 30 | 3b 69 3c 34 3b 69 2b 2b |for (i=0|;i<4;i++|
|000035f0| 29 0d 0a 20 20 20 20 7b | 0d 0a 09 09 52 65 70 65 |).. {|....Repe|
|00003600| 61 74 4b 65 79 5b 69 5d | 3d 30 3b 0d 0a 09 09 52 |atKey[i]|=0;....R|
|00003610| 65 70 65 61 74 54 69 6d | 65 5b 69 5d 3d 30 3b 0d |epeatTim|e[i]=0;.|
|00003620| 0a 20 20 20 20 7d 0d 0a | 7d 0d 0a 0d 0a 65 76 65 |. }..|}....eve|
|00003630| 6e 74 20 4d 6f 76 65 46 | 6f 63 75 73 65 64 28 47 |nt MoveF|ocused(G|
|00003640| 55 49 43 6f 6d 70 6f 6e | 65 6e 74 20 43 74 72 6c |UICompon|ent Ctrl|
|00003650| 2c 20 69 6e 74 20 62 6d | 4c 65 66 74 2c 20 69 6e |, int bm|Left, in|
|00003660| 74 20 62 6d 54 6f 70 2c | 20 69 6e 74 20 62 6d 57 |t bmTop,| int bmW|
|00003670| 69 64 74 68 2c 20 69 6e | 74 20 62 6d 48 65 69 67 |idth, in|t bmHeig|
|00003680| 68 74 2c 20 66 6c 6f 61 | 74 20 43 6c 69 70 58 2c |ht, floa|t ClipX,|
|00003690| 20 66 6c 6f 61 74 20 43 | 6c 69 70 59 29 0d 0a 7b | float C|lipY)..{|
|000036a0| 0d 0a 09 6c 6f 63 61 6c | 20 66 6c 6f 61 74 20 76 |...local| float v|
|000036b0| 61 6c 3b 0d 0a 0d 0a 0d | 0a 09 69 66 20 28 41 6c |al;.....|..if (Al|
|000036c0| 74 50 72 65 73 73 65 64 | 29 0d 0a 09 09 76 61 6c |tPressed|)....val|
|000036d0| 20 3d 20 35 3b 0d 0a 09 | 65 6c 73 65 0d 0a 09 09 | = 5;...|else....|
|000036e0| 76 61 6c 20 3d 20 31 3b | 0d 0a 0d 0a 09 69 66 20 |val = 1;|.....if |
|000036f0| 28 62 6d 4c 65 66 74 21 | 3d 30 29 0d 0a 09 7b 0d |(bmLeft!|=0)...{.|
|00003700| 0a 09 09 69 66 20 28 43 | 74 72 6c 2e 57 69 6e 4c |...if (C|trl.WinL|
|00003710| 65 66 74 3c 31 29 0d 0a | 09 09 09 43 74 72 6c 2e |eft<1)..|...Ctrl.|
|00003720| 57 69 6e 4c 65 66 74 20 | 3d 20 43 74 72 6c 2e 57 |WinLeft |= Ctrl.W|
|00003730| 69 6e 4c 65 66 74 20 2b | 20 28 20 28 56 61 6c 2f |inLeft +| ( (Val/|
|00003740| 43 6c 69 70 58 29 20 2a | 20 62 6d 4c 65 66 74 29 |ClipX) *| bmLeft)|
|00003750| 3b 0d 0a 09 09 65 6c 73 | 65 0d 0a 09 09 09 43 74 |;....els|e.....Ct|
|00003760| 72 6c 2e 57 69 6e 4c 65 | 66 74 20 2b 3d 20 28 56 |rl.WinLe|ft += (V|
|00003770| 61 6c 2a 62 6d 4c 65 66 | 74 29 3b 0d 0a 09 7d 0d |al*bmLef|t);...}.|
|00003780| 0a 0d 0a 09 69 66 20 28 | 62 6d 54 6f 70 21 3d 30 |....if (|bmTop!=0|
|00003790| 29 0d 0a 09 7b 0d 0a 09 | 09 69 66 20 28 43 74 72 |)...{...|.if (Ctr|
|000037a0| 6c 2e 57 69 6e 54 6f 70 | 3c 31 29 0d 0a 09 09 09 |l.WinTop|<1).....|
|000037b0| 43 74 72 6c 2e 57 69 6e | 54 6f 70 20 3d 20 43 74 |Ctrl.Win|Top = Ct|
|000037c0| 72 6c 2e 57 69 6e 54 6f | 70 20 2b 20 28 20 28 56 |rl.WinTo|p + ( (V|
|000037d0| 61 6c 2f 43 6c 69 70 59 | 29 20 2a 20 62 6d 54 6f |al/ClipY|) * bmTo|
|000037e0| 70 29 3b 0d 0a 09 09 65 | 6c 73 65 0d 0a 09 09 09 |p);....e|lse.....|
|000037f0| 43 74 72 6c 2e 57 69 6e | 54 6f 70 2b 3d 20 28 56 |Ctrl.Win|Top+= (V|
|00003800| 61 6c 2a 62 6d 54 6f 70 | 29 3b 0d 0a 09 7d 0d 0a |al*bmTop|);...}..|
|00003810| 0d 0a 09 69 66 20 28 62 | 6d 57 69 64 74 68 21 3d |...if (b|mWidth!=|
|00003820| 30 29 0d 0a 09 7b 0d 0a | 09 09 69 66 20 28 43 74 |0)...{..|..if (Ct|
|00003830| 72 6c 2e 57 69 6e 57 69 | 64 74 68 3c 31 29 0d 0a |rl.WinWi|dth<1)..|
|00003840| 09 09 09 43 74 72 6c 2e | 57 69 6e 57 69 64 74 68 |...Ctrl.|WinWidth|
|00003850| 20 3d 20 43 74 72 6c 2e | 57 69 6e 57 69 64 74 68 | = Ctrl.|WinWidth|
|00003860| 20 2b 20 28 20 28 56 61 | 6c 2f 43 6c 69 70 58 29 | + ( (Va|l/ClipX)|
|00003870| 20 2a 20 62 6d 57 69 64 | 74 68 29 3b 0d 0a 09 09 | * bmWid|th);....|
|00003880| 65 6c 73 65 0d 0a 09 09 | 09 43 74 72 6c 2e 57 69 |else....|.Ctrl.Wi|
|00003890| 6e 57 69 64 74 68 20 2b | 3d 20 28 56 61 6c 2a 62 |nWidth +|= (Val*b|
|000038a0| 6d 57 69 64 74 68 29 3b | 0d 0a 09 7d 0d 0a 0d 0a |mWidth);|...}....|
|000038b0| 09 69 66 20 28 62 6d 48 | 65 69 67 68 74 21 3d 30 |.if (bmH|eight!=0|
|000038c0| 29 0d 0a 09 7b 0d 0a 09 | 09 69 66 20 28 43 74 72 |)...{...|.if (Ctr|
|000038d0| 6c 2e 57 69 6e 48 65 69 | 67 68 74 3c 31 29 0d 0a |l.WinHei|ght<1)..|
|000038e0| 09 09 09 43 74 72 6c 2e | 57 69 6e 48 65 69 67 68 |...Ctrl.|WinHeigh|
|000038f0| 74 20 3d 20 43 74 72 6c | 2e 57 69 6e 48 65 69 67 |t = Ctrl|.WinHeig|
|00003900| 68 74 20 2b 20 28 20 28 | 56 61 6c 2f 43 6c 69 70 |ht + ( (|Val/Clip|
|00003910| 58 29 20 2a 20 62 6d 48 | 65 69 67 68 74 29 3b 0d |X) * bmH|eight);.|
|00003920| 0a 09 09 65 6c 73 65 0d | 0a 09 09 09 43 74 72 6c |...else.|....Ctrl|
|00003930| 2e 57 69 6e 48 65 69 67 | 68 74 20 2b 3d 20 28 56 |.WinHeig|ht += (V|
|00003940| 61 6c 2a 62 6d 48 65 69 | 67 68 74 29 3b 0d 0a 09 |al*bmHei|ght);...|
|00003950| 7d 0d 0a 7d 0d 0a 0d 0a | 66 75 6e 63 74 69 6f 6e |}..}....|function|
|00003960| 20 62 6f 6f 6c 20 48 61 | 73 4d 6f 75 73 65 4d 6f | bool Ha|sMouseMo|
|00003970| 76 65 64 28 29 0d 0a 7b | 0d 0a 09 69 66 20 28 4d |ved()..{|...if (M|
|00003980| 6f 75 73 65 58 3d 3d 4c | 61 73 74 4d 6f 75 73 65 |ouseX==L|astMouse|
|00003990| 58 20 26 26 20 4d 6f 75 | 73 65 59 3d 3d 4c 61 73 |X && Mou|seY==Las|
|000039a0| 74 4d 6f 75 73 65 59 29 | 0d 0a 09 09 72 65 74 75 |tMouseY)|....retu|
|000039b0| 72 6e 20 66 61 6c 73 65 | 3b 0d 0a 09 65 6c 73 65 |rn false|;...else|
|000039c0| 0d 0a 09 09 72 65 74 75 | 72 6e 20 74 72 75 65 3b |....retu|rn true;|
|000039d0| 0d 0a 7d 0d 0a 0d 0a 65 | 76 65 6e 74 20 62 6f 6f |..}....e|vent boo|
|000039e0| 6c 20 4e 65 65 64 73 4d | 65 6e 75 52 65 73 6f 6c |l NeedsM|enuResol|
|000039f0| 75 74 69 6f 6e 28 29 0d | 0a 7b 0d 0a 0d 0a 09 69 |ution().|.{.....i|
|00003a00| 66 20 28 20 28 41 63 74 | 69 76 65 50 61 67 65 21 |f ( (Act|ivePage!|
|00003a10| 3d 4e 6f 6e 65 29 20 26 | 26 20 28 41 63 74 69 76 |=None) &|& (Activ|
|00003a20| 65 50 61 67 65 2e 62 52 | 65 71 75 69 72 65 36 34 |ePage.bR|equire64|
|00003a30| 30 78 34 38 30 29 20 29 | 0d 0a 09 09 72 65 74 75 |0x480) )|....retu|
|00003a40| 72 6e 20 74 72 75 65 3b | 0d 0a 09 65 6c 73 65 0d |rn true;|...else.|
|00003a50| 0a 09 09 72 65 74 75 72 | 6e 20 66 61 6c 73 65 3b |...retur|n false;|
|00003a60| 0d 0a 7d 0d 0a 0d 0a 65 | 76 65 6e 74 20 53 65 74 |..}....e|vent Set|
|00003a70| 52 65 71 75 69 72 65 64 | 47 61 6d 65 52 65 73 6f |Required|GameReso|
|00003a80| 6c 75 74 69 6f 6e 28 73 | 74 72 69 6e 67 20 47 61 |lution(s|tring Ga|
|00003a90| 6d 65 52 65 73 29 0d 0a | 7b 0d 0a 09 47 61 6d 65 |meRes)..|{...Game|
|00003aa0| 52 65 73 6f 6c 75 74 69 | 6f 6e 20 3d 20 47 61 6d |Resoluti|on = Gam|
|00003ab0| 65 52 65 73 3b 0d 0a 7d | 0d 0a 0d 0a 65 76 65 6e |eRes;..}|....even|
|00003ac0| 74 20 4e 6f 74 69 66 79 | 4c 65 76 65 6c 43 68 61 |t Notify|LevelCha|
|00003ad0| 6e 67 65 28 29 0d 0a 7b | 0d 0a 09 6c 6f 63 61 6c |nge()..{|...local|
|00003ae0| 20 69 6e 74 20 69 3b 0d | 0a 0d 0a 20 20 20 20 66 | int i;.|... f|
|00003af0| 6f 72 20 28 69 3d 30 3b | 69 3c 4d 65 6e 75 53 74 |or (i=0;|i<MenuSt|
|00003b00| 61 63 6b 2e 4c 65 6e 67 | 74 68 3b 69 2b 2b 29 0d |ack.Leng|th;i++).|
|00003b10| 0a 20 20 20 20 09 4d 65 | 6e 75 53 74 61 63 6b 5b |. .Me|nuStack[|
|00003b20| 69 5d 2e 4e 6f 74 69 66 | 79 4c 65 76 65 6c 43 68 |i].Notif|yLevelCh|
|00003b30| 61 6e 67 65 28 29 3b 0d | 0a 7d 0d 0a 0d 0a 00 |ange();.|.}..... |
+--------+-------------------------+-------------------------+--------+--------+